2013-08-24 4 views
3

값으로 상수를 정의해야합니다.변수로 클래스 상수 정의

class Foo { 
const ARTICLES_KEY = $this->config->models->key->category; 
} 

을하지만 PHP는 말한다 : 내가 해봤에 이런 식으로 뭔가를 만드는 syntax error, unexpected T_VARIABLE

나는 또한 정적 VAR를 사용하려고하지만 작품을 나던.

어떻게 제대로 만들 수 있습니까?

답변

3

당신은 할 수 없습니다 : http://www.php.net/manual/en/language.oop5.constants.php 같은 불변 나머지 클래스 별 기준 에 상수 값을 정의 할 수 있습니다

을 읽습니다. 상수는 $ 기호를 사용하여 선언하거나 사용하지 않는다는 점에서 일반 변수와 다릅니다.

값은 변수 (예 :)가 아니며 속성, 수학 연산의 결과 또는 함수 호출이어야합니다.

+0

예, 알겠습니다. 그러나 어떻게 이런 것을 만들 수 있습니까? 나는 개인 $ category_key = $ this-> config-> models-> key-> category를 시도했다; 그러나 그것은 또한 일하지 않는다. 왜 init 동안 var를 정의 할 수 있습니까? – ovnia

+1

생성자에'$ category'를 지정하십시오. –