关于php:不允许表达式作为字段默认值

Expression is not allowed as field default value

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

首先,我得到:

"Expression is not allowed as field default value"

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

Unidentified variable $app

我怎样才能实现目标?

1
2
3
4
5
6
class UserController extends XController
{
    var $app = Yii::app();;
    public function init()
    {
        $test = $app;


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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
use Yii;

class UserController extends XController    
{
    var $app;

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

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

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