2012-03-02
상수란?

상수는 단순한 값을 위한 식별자(이름)이다. 이름이 제시하는것과 같이, 이 값은 스크립트 실행중에는 변경될수 없다. (실질적으로 상수가 아닌 마법 상수 을 제외하고) 상수는 기본적으로 대소문자를 구별한다. 관례상, 상수 식별자는 항상 대문자이다.
PHP에서 상수명은 같은 규칙을 따른다. 유효한 상수명은 문자나 밑줄로 시작하고 다른 문자나 숫자, 밑줄이 뒤를 따른다. 정규식으로는 다음처럼 표현할수 있다: [a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*
상수의 유효범위(scope)는 전역적이다. 유효범위에 상관없이 스크립트의 어느곳에서도 상수를 참조할수 있다.

참조 : http://php.net/manual/kr/language.constants.php
상수의 정의 : define( "상수명", "상수의 값"); 상수의 체크 : defined( "상수명");

마법상수(미리정의된 상수)
미리 정의된 상수로 __ 으로 시작되는 상수들이다. 그러므로 상수를 정의할때 __로 시작하는것은 피하는것을 권장한다. 이 특별한 상수들은 대소문자 구별이 없다.
예) __LINE__ : 파일의 현재 줄 번호를 반환하는 상수

참조 : http://www.php.net/manual/kr/language.constants.predefined.php

모든 상수 보기
echo "<pre>";
print_r(get_defined_constants(true));
echo "</pre>";
위의 소스로 모든 상수들을 확인할 수 있다.