$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->controller 是 null
所以 module 的 init 事件之前(包括init事件内), Yii::$app->controller 都是 null controller 的 beforeAction 事件之前(包括beforeACtion事件内), Yii::$app->controller->action 也是没值的;;;
调用的位置不对吧。
当前位置,没有那个对象.
在控制器和视图里都可以用的,在控制器里也可以直接用$this->controller->id获取~