Exemple #1
0
 /**
  * 订阅类的事件
  *
  * @param string $class
  * @param string $event
  * @param callback $callback
  * @access public
  * @return void
  */
 public function subscribe($class, $event, $callback)
 {
     if (!is_callable($callback)) {
         throw Error::not_callable('Events::subscribe() parameter 3');
     }
     $class = strtolower(ltrim($class, '\\'));
     $this->subscribe[$class][$event][] = $callback;
 }
Exemple #2
0
 /**
  * 自定义类的autoloader
  * 会覆盖默认的autoloader
  *
  * @param callable $loader
  * @param boolean $throw
  * @param boolean $prepend
  * @access public
  * @return Lysine\MVC\Application
  */
 public function setAutoloader($loader, $throw = true, $prepend = false)
 {
     if (!is_callable($loader)) {
         throw Error::not_callable('Application loader');
     }
     spl_autoload_unregister(array($this, 'loadClass'));
     spl_autoload_register($loader, $throw, $prepend);
     return $this;
 }