谁一开始就是大神?

Yii::$app->controller->id报错,请大侠点[2.0]

$controllerID = Yii::$app->controller->id;
$actionID = Yii::$app->controller->action->id;

报错

PHP Notice – yii\base\ErrorException
Trying to get property of non-object

首先, 这两行代码没什么问题.
你肯定是用错了地方,
module里面 实例化controller[createController] 之后, 才将controller绑定到Yii::$app
而绑定action到当前controller的节点 则在 controller runAction之后
因此 , 你在module没有执行 runAction 之前, Yii::$app->controllernull
所以 moduleinit 事件之前(包括init事件内), Yii::$app->controller 都是 null
controllerbeforeAction 事件之前(包括beforeACtion事件内), Yii::$app->controller->action 也是没值的;;;
调用的位置不对吧。
当前位置,没有那个对象.
在控制器和视图里都可以用的,在控制器里也可以直接用$this->controller->id获取~

赞(0) 打赏
未经允许不得转载:菜鸟之家 » Yii::$app->controller->id报错,请大侠点[2.0]

评论 抢沙发

登录

找回密码

注册