2017-12-21 33 views
-1

내가 PHP 아래 7.2.0마법 상수 __FILE__에 대한 설명에서 "symlinks resolved"가 의미하는 것은 무엇입니까?

를 사용하고있어 마법 일정 __FILE__에 대한 설명입니다

의 전체 경로 및 해결 심볼릭 링크를 사용하여 파일의 파일 이름. Include 안에 을 사용하면 포함 된 파일의 이름이 반환됩니다.

내가 절 "해결 심볼릭 링크로 파일의 파일 이름"의 의미를 이해하지 않았다

누군가가 나를 __FILE__ 일정 마법의 사용 시범 적절한 예를 들어이 조항의 의미를 이해하시기 바랍니다 적절한 설명과 함께.

+0

PHP와 같은 사운드는 심볼릭 링크 된 경로를 직접 반환하지 않고 심볼릭 링크의 실제 경로를 해결합니다. 나는이 질문에'compile-time-constant' 태그를 붙였습니다. PHP에는 그런 것이 없습니다. – OptimusCrime

+1

@OptimusCrime : 귀하의 사실을 수정하십시오. 다음은 PHP 매뉴얼 자체의 인용문입니다. "이 모든"마법 "상수는 런타임에 해결 된 일반 상수와 달리 컴파일 타임에 해결됩니다. – SerialKisser

+0

미안하지만, 나는 그 사실을 몰랐다. 필자는 PHP가 컴파일시의 상수를 가지고있는 것에 대해 들어 본 적이 없지만이 컨텍스트에서 의미가 있다고 생각합니다. – OptimusCrime

답변

5

심볼릭 링크 (심볼릭 링크)는 임의의 다른 디렉토리 항목에서 한 디렉토리 항목을 가리 키도록 파일 시스템에서 만들 수있는 "바로 가기"입니다. * nix 쉘, 뭔가 같은 :

$ ln -s /foo/bar.php /baz 

/foo/bar.php에 심볼릭 링크로 /baz을 설정합니다. 어떤 파일을 사용하든 실제로는 동일합니다.

심볼릭 링크 해결은 주어진 경로를보고 심볼릭 링크를 인식하고 심볼릭 링크가 가리키는 실제 파일 경로로 바꿉니다. 그래서 관계없이

$ php /baz 

또는

$ php /foo/bar.php 

__FILE__ 일정

을 할 수 있는지 여부는 실제 파일 경로 /foo/bar.php에 해결 될 것입니다.