PHN event dispatcher
$this->event->removeListener('404',array($this,'__error404'));
$func = function($e){
var_dump($this);
};
$this->event->addListener('404',$func);
$this->event->removeListener('404',$func);
$this->event->addListener('EVENT_X', function($e){
echo "handler #1";
var_dump($e->cfg);
$e->more = array(1);
$e->cfg['more']=true;
});
$this->event->addListener('EVENT_X', function($e){
echo "handler #2";
var_dump($e->more);
});
$e = new Event();
$e->cfg=$this->cfg;
$this->event->dispatch('EVENT_X',$e );