'configs' => $configs,
'user' => $user
]);
//异常处理
try{
$result = $object->$func($args);
}catch(LogicException $e){
return $this->error($e->getErrcode(), $e->getErrmsg(), $e->getData());
}catch(\Exception $e){
throw $e;
}
if($paramsCount === 0){
//默认调用. 无参数
return $serv->callServiceClass($controllerId, $actionId, null);
}else if($paramsCount === 1){
//单参数调用
return $serv->callServiceClass($controllerId, $actionId, $class);
}else if($paramsCount >= 2){
//指定调用
return $serv->callServiceClass($class, $func, $args);
}
}
public function msg($msg, $type = 'error'){
call_user_func(array('\appcore\service\base\Service', 'msg'), $msg, $type);
}
//调用业务层
public function service(){
return call_user_func_array(array('\appcore\service\base\Service', 'call'), func_get_args());
}
//调用业务层
public function modService(){
return call_user_func_array(array('\appcore\service\base\Service', 'modcall'), func_get_args());
}
*/
public function __call($name, $params)
{
$this->ensureBehaviors();
foreach ($this->_behaviors as $object) {
if ($object->hasMethod($name)) {
return call_user_func_array([$object, $name], $params);
}
}
throw new UnknownMethodException('Calling unknown method: ' . get_class($this) . "::$name()");
}
/**
//栏目列表页
public function actionColumn_list(){
$url = $this->_getUrl();
$result = $this->service($url);
return $result;
}
//栏目封面页
public function actionColumn_cover(){
$args = $this->controller->bindActionParams($this, $params);
Yii::debug('Running action: ' . get_class($this->controller) . '::' . $this->actionMethod . '()', __METHOD__);
if (Yii::$app->requestedParams === null) {
Yii::$app->requestedParams = $args;
}
return call_user_func_array([$this->controller, $this->actionMethod], $args);
}
}
}
$result = null;
if ($runAction && $this->beforeAction($action)) {
// run the action
$result = $action->runWithParams($params);
$result = $this->afterAction($action, $result);
// call afterAction on modules
foreach ($modules as $module) {
/* @var $module Module */
$parts = $this->createController($route);
if (is_array($parts)) {
/* @var $controller Controller */
list($controller, $actionID) = $parts;
$oldController = Yii::$app->controller;
Yii::$app->controller = $controller;
$result = $controller->runAction($actionID, $params);
if ($oldController !== null) {
Yii::$app->controller = $oldController;
}
return $result;
}
$params = $this->catchAll;
unset($params[0]);
}
try {
Yii::debug("Route requested: '$route'", __METHOD__);
$this->requestedRoute = $route;
$result = $this->runAction($route, $params);
if ($result instanceof Response) {
return $result;
}
$response = $this->getResponse();
if ($result !== null) {
{
try {
$this->state = self::STATE_BEFORE_REQUEST;
$this->trigger(self::EVENT_BEFORE_REQUEST);
$this->state = self::STATE_HANDLING_REQUEST;
$response = $this->handleRequest($this->getRequest());
$this->state = self::STATE_AFTER_REQUEST;
$this->trigger(self::EVENT_AFTER_REQUEST);
$this->state = self::STATE_SENDING_RESPONSE;
$response->send();
require __DIR__ . '/vendor/autoload.php';
require __DIR__ . '/vendor/yiisoft/yii2/Yii.php';
$config = require __DIR__ . '/config/web.php';
(new yii\web\Application($config))->run();