piqiu2000 2015-08-10 16:57:32 3852次浏览 1条回复 0 0 0
$controllerID = Yii::$app->controller->id;
$actionID = Yii::$app->controller->action->id;

PHP Notice – yii\base\ErrorException Trying to get property of non-object 为什么会报错?是不是要use什么代码?信息

  • 回复于 2015-08-10 18:25 举报

    首先, 这两行代码没什么问题.

    你肯定是用错了地方,

    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 也是没值的;;;

    觉得很赞
您需要登录后才可以回复。登录 | 立即注册