less than 1 minute read

상수

변경되지 않는 값이며, 어느 스코프에도 상관 없이 접근이 가능하다.

문법

  • 특징
  • $표시가 없다.
  • 재선언 불가.

  • 선언 
  • define(‘TEST_VAL1’,’VAL1’);
  • 세번째 값으로 대소문자 구분여부를 선언할 수 있다. 기본으로 구분 함으로 되어있다.

  • const CONSTANT = ‘Hello World’; //php 5.3.0 부터 지원

  • 체크 : defined(‘TEST_VAL1’);
  • 사용 : echo TEST_VAL1;

마법 상수

  • 설명
  • 그때그때 값이 들어가게 된다.
  • 잘만 쓰면 아주 편하게 디버깅을 할 수 있다.

  • LINE : 현재 처리중인 소스의 라인
  • __FILE__ : 현재 처리중인 소스의 파일명(절대 경로)
  • __FUNCTION__ : 현재 처리중인 함수 명
  • CLASS : 현재 처리중인 클래스 명
  • METHOD : 현재 처리중인 메소드 명 CLASS::METHOD  형식
  • 한마디
  • 이 외의 것은 링크 타고 들어가소 보자
  • FILE 은 꽤 많이 사용된다.
    난 
    **include(dirname(FILE).’/class.xxx.php’); **
    처럼 사용해서 경로 문제 없이 같은 폴더의 파일을 include하는데 자주 사용한다.
    dirname(FILE) 는  DIR 로 바꿀 수 있지만,  php 5.3 이상이어야 한다.

🔗original-link

Updated: