2010-03-22 71 views
0

我是新来的PHP,所以也许我在这里可以俯瞰东西,但以下几点:试图建立一个类变量时,为什么我得到这个错误

class someClass { 

    var $id = $_GET['id']; 

    function sayHello() { 

     echo "Hello"; 

    } 

} 

提供了以下错误:

解析错误:语法错误,在C意想不到T_VARIABLE:\ XAMPP \ htdocs中\文件\上线13 classes.php

如果不是$ _GET [ '身份证']我设置变量$ ID为一个字符串,一切都很好,但。

回答

4

您不能使用构造函数以这种方式向类成员分配除常量以外的任何内容。

the manual

declaration [of a property] may include an initialization, but this initialization must be a constant value--that is, it must be able to be evaluated at compile time and must not depend on run-time information in order to be evaluated.

做的另一种方法是to use a constructor设定值:

class someClass { 

    var $id; 

    public function __construct(){ 
     $this->id = $_GET['id']; 
    } 

    function sayHello() { 
     echo "Hello"; 
    } 
} 
1

你应该在构造函数中指定的变量

class someClass { 

    function __construct() { 
     $this->id = $_GET['id']; 
    } 

} 
相关问题