2014-02-27 2 views
1

PHP에서 이름 공간 상수를 정의하려면 전체 경로를 사용해야합니다. 실수 선도적 인 백 슬래시가 포함 된 경우선행 백 슬래시가있는 PHP 상수는 어디에서 끝나나요?

define('theNamespace\CONSTANT_NAME',42); 
echo theNamespace\CONSTANT_NAME, "\n"; 

은, PHP 은 상수를 정의하지 않습니다.

define('\theNamespace\CONSTANT_NAME',42); 
echo theNamespace\CONSTANT_NAME, "\n"; 
#PHP Fatal error: Undefined constant 'theNamespace\CONSTANT_NAME' 

그러나, define 함수는 나중에 사용법에 대해 불평하지 않습니다. 이 \theNamespace\CONSTANT_NAME 상수는 PHP를 통해 어디서나 액세스 할 수 있습니까? 아니면 어딘가에있는 이더넷에서 손실 된 값입니까?

답변

1

정의 된 상수 배열에 들어갑니다. 내 생각 엔 전화가 아닌 다른 방법으로 전화를 찾는 것입니다. get_defined_constants()

define('\theNamespace\CONSTANT_NAME',42); 
echo get_defined_constants()['\theNamespace\CONSTANT_NAME']; 
관련 문제