1 | <?php /** MicroDispatcher */ |
||
19 | class Dispatcher implements IDispatcher |
||
20 | { |
||
21 | /** @var array $listeners listeners objects on events */ |
||
22 | protected $listeners = []; |
||
23 | |||
24 | /** |
||
25 | * Add listener on event |
||
26 | * |
||
27 | * @access public |
||
28 | * |
||
29 | * @param string $listener listener name |
||
30 | * @param array $event ['Object', 'method'] or callable |
||
31 | * @param int|null $prior priority |
||
32 | * |
||
33 | * @return bool |
||
34 | */ |
||
35 | public function addListener($listener, $event, $prior = null) |
||
53 | |||
54 | /** |
||
55 | * Send signal to run event |
||
56 | * |
||
57 | * @access public |
||
58 | * |
||
59 | * @param string $listener listener name |
||
60 | * @param array $params Signal parameters |
||
61 | * |
||
62 | * @return mixed |
||
63 | */ |
||
64 | public function signal($listener, array $params = []) |
||
80 | } |
||
81 |
In PHP, under loose comparison (like
==
, or!=
, orswitch
conditions), values of different types might be equal.For
integer
values, zero is a special case, in particular the following results might be unexpected: