programing

PHP의 __DIR__와 dirname(_FILE__) 사이에 차이가 있습니까?

goodcopy 2023. 1. 10. 21:29
반응형

PHP의 __DIR__와 dirname(_FILE__) 사이에 차이가 있습니까?

나한테는 똑같아 보이지만 잘 모르겠어

왜냐하면 많은 프로젝트들이 사용되기 때문입니다.dirname(__FILE__).

그들의 결과는 완전히 같기 때문에, 그것에 대해서는 차이가 없다.


예를 들어, 다음 두 행이 있습니다.

var_dump(dirname(__FILE__));
var_dump(__DIR__);

양쪽에서 같은 출력이 출력됩니다.

string '/home/squale/developpement/tests/temp' (length=37)


단, 적어도 두 가지 차이가 있습니다.

  • __DIR__ PHP > = 5.3에만 존재합니다.
    • 그래서 더 널리 쓰이고 있습니다.
  • __DIR__ 컴파일 시에 평가되며 함수 호출을 의미하며 실행 시에 평가됩니다.
    • 더 빠른가(또는 더 빨라야 하는가)


참고로 매뉴얼(인용)매직 상수 섹션을 참조하십시오.

__DIR__: 파일의 디렉토리.
include 내에서 사용되는 경우 포함된 파일의 디렉토리가 반환됩니다.
이것은 에 상당합니다.dirname(__FILE__).
루트 디렉토리가 아닌 한 이 디렉토리 이름에는 후행 슬래시가 없습니다.
(PHP 5.3.0에 추가)

언급URL : https://stackoverflow.com/questions/2749416/is-there-any-difference-between-dir-and-dirname-file-in-php

반응형