나한테는 똑같아 보이지만 잘 모르겠어
왜냐하면 많은 프로젝트들이 사용되기 때문입니다.dirname(__FILE__)
.
질문에 대한 답변
그들의 결과는 완전히 같기 때문에, 그것에 대해서는 차이가 없다.
예를 들어, 다음 두 행이 있습니다.
var_dump(dirname(__FILE__)); var_dump(__DIR__);
양쪽에서 같은 출력이 출력됩니다.
string '/home/squale/developpement/tests/temp' (length=37)
단, 적어도 두 가지 차이가 있습니다.
__DIR__
PHP > = 5.3에만 존재합니다.- 그래서 더 널리 쓰이고 있습니다.
__DIR__
컴파일 시에 평가되며 함수 호출을 의미하며 실행 시에 평가됩니다.- 더 빠른가(또는 더 빨라야 하는가)
으로서, 참고로,:매뉴얼(말을 인용해)의 마법의 상수 섹션을 참조하십시오.
__DIR__
파일:디렉터리입니다.
만약 시 내부의, 포함되어 파일의 디렉터리 반환됩니다.
이것에 해당합니다dirname(__FILE__)
.
가 아니라면 루트 디렉터리 이 디렉터리 이름의 끝 부분에 사선이 없다.
(PHP 5.3.0에 추가했습니다.)