2010-03-22 3 views
0

I 해요 PHP 새로운 그래서 어쩌면 내가 여기서 뭔가를 내려다 있지만 다음 오전 :이유는이 오류를받을 수 있나요

:

class someClass { 

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

    function sayHello() { 

     echo "Hello"; 

    } 

} 

다음과 같은 오류를 제공합니다 구문 분석 오류 : 구문 오류, C에서 예상치 못한 T_VARIABLE : \ XAMPP \ htdocs에 파일 \ \ 라인 (13)에 classes.php

대신 $ _GET 경우 [ 'ID는'] 나는, 문자열로 변수 $ 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']; 
    } 

}