if(defined('_INDEX_')) 는 함수, 변수 인가요
본문
그누보드 5 에 보면..
if(defined('_INDEX_')) 라는 항목이 있는데..
어디에서 지정해주고,, 어떻게 사용하는건가요
defined() 은 함수 같은데.,
'_INDEX_' 뜻은 뭔가요 ?
_index_ 대신에 아무걸로 적어도 되나요//
답변 1
_INDEX_는 상수입니다. 일반적으로 변수는 소문자를 사용하고 상수는 대문자로 정의합니다.
변수는 값을 여러번 변경할 수 있지만 상수는 한번 선언하면 항상 고정되는 수입니다.
상수선언과 사용하는 부분에 보면 define()과 defined()함수가 있습니다.
define() 함수는 상수를 등록하는 함수이고,
defined() 함수는 상수가 등록되어 있는지를 검사하는 함수입니다.
_INDEX_가 선언되는 부분은
index.php파일의 상단에 보면,
define('_INDEX_', true); 라고 선언되어 있습니다.
그리고 사용하는 부분에 보면, if(defined('_INDEX_'))라고 되어 있는데.
즉, 초기파일인 index파일에서만 _INDEX_상수가 true값으로 선언되어 있으므로
if(defined('_INDEX_')) 부분은 index파일에서만 if문이 만족이 되는 것이고 index파일이 아닌 파일에서는
거짓인 false이겠지요.
_INDEX_상수를 사용하는 이유가 초기 파일이 아닌 경우, 특정 내용을 실행하지 못하게 하기 위한 의도라고
보시면 될 겁니다.
답변을 작성하시기 전에 로그인 해주세요.