2011-08-22 5 views

답변

8

이것은 클래스 상수의 개념에 위배됩니다. 특정 인스턴스에 종속되어서는 안됩니다. 대신 변수를 사용해야합니다.

당신이 이것을 주장하고 매우 모험적이며 PHP 확장을 설치할 수 있다면 런타임에 클래스와 상수를 수정할 수있는 runkit 확장을 살펴볼 수 있습니다. 이 문서를 참조하십시오 : http://www.php.net/manual/en/function.runkit-constant-add.php

+0

PHP에서 생성자에서 설정할 수있는'static final'을 찾았 습니다만, 불행하게도 php 상수는 약간 다릅니다. –

+0

또한 상수 개념에 반대하지만, PHP에서는 동적으로 상수를 정의 할 수 있습니다(). –

+0

다른 상수의 값으로 값이 구성된 문자열 상수를 정의하려는 경우 (공통 부분을 DRY하기 위해) 유용 할 수 있습니다. PHP는 표현식 (예 : 두 문자열의 연결)을 상수 값으로 허용하지 않기 때문에 생성자에서이 작업을 수행하는 것이 유용했을 것입니다. –

3

나는 당신이 할 수 있다고 생각하지 않습니다.

처음에는 생성자가없는 정적 컨텍스트에서 클래스 상수를 사용할 수 있습니다.

대신 변수를 사용해야합니다. 바로 변수가 있어야합니다.

관련 문제