表达式不允许作为字段默认值

时间:2016-01-27 12:27:29

标签: php oop

我正在尝试为全班提供$app

首先,我得到:

  

"表达式不允许作为字段默认值"

第二,在第5行,我得到:

  

未识别的变量$ app

我如何实现目标?

class UserController extends XController
{
    var $app = Yii::app();;
    public function init()
    {
        $test = $app;

1 个答案:

答案 0 :(得分:24)

您无法调用方法来为PHP中的变量设置默认值,即使它是静态方法也是如此。将其更改为在构造函数中设置:

use Yii;

class UserController extends XController    
{
    var $app;

    function __construct() {
        $this->app =  = Yii::app();
    }

    public function init()    
    {
        $test = $this->app;
    } 
}

作为旁注,您不应在PHP版本中使用var关键字> 4,请参阅this question以获取解释。