0

我正在尝试扩展一个基类并能够从它的子类访问一个属性,有人可以解释为什么以下工作:

class Base_Class {
        public function is_dev(){
            $var = (substr($_SERVER['HTTP_HOST'], -3) == 'dev') ? TRUE : FALSE;
            return $var;
        }
}

所以有了这个我可以通过$this->is_dev()

但以下不起作用:

class Base_Class {
        public $var = (substr($_SERVER['HTTP_HOST'], -3) == 'dev') ? TRUE : FALSE;
}

我希望使用它来访问它,$this->var但在我进入这部分之前我遇到了一个我不明白的语法错误。

更新:

当我在空间不足之前尝试列出 5 或 6 个语法错误时,该错误抱怨很多,以语法 er 结尾.​​.....但第一行显示

expected identifier +,_,static

所有其他人都说它期待其他不存在的东西......当然期待很多

提前致谢。

4

1 回答 1

4

使用该__construct功能。这将var在加载类时设置:

class Base_Class {
        public $var;
        function __construct(){
            $this->var = (substr($_SERVER['HTTP_HOST'], -3) == 'dev') ? TRUE : FALSE;
        }
}
于 2013-03-13T12:08:40.930 回答