Phalcon\Mvc\User\Logic 拥有方法:getActionName($params = NULL) 、getActionParams($params = NULL)、setContent($content)、getContent()以及静态方法:call($actonName = NULL, $actionParams = NULL)
通过设定 $dispatcher->setLogicBinding(true); 既可以通过设置控制方法的参数来实例化逻辑类。
1class LogicController extends Phalcon\Mvc\Controller 2{ 3 public function indexAction(\MyLogic $logic) 4 { 5 return $logic; 6 } 7} 8 9class MyLogic extends Phalcon\Mvc\User\Logic 10{ 11 public $num = 0; 12 13 // 覆盖方法 call 14 public static function call($action = NULL, $params = NULL) 15 { 16 $logic = new MyLogic($action, $params); 17 $logic->num = 1; 18 return $logic; 19 } 20 21} 22 23$di = new \Phalcon\DI(); 24$dispatcher = new \Phalcon\Mvc\Dispatcher(); 25$dispatcher->setDI($di); 26$dispatcher->setLogicBinding(true); 27$dispatcher->setControllerName('Logic'); 28$dispatcher->setActionName('index'); 29$dispatcher->dispatch(); 30$logic = $dispatcher->getReturnedValue();