Что означает "разрешенные символические ссылки" в описании магической константы __FILE__?

Я использую PHP 7.2.0

Ниже описание магической константы __FILE__:

Полный путь и имя файла с символическими ссылками разрешены. Если используется внутри включения, возвращается имя включенного файла.

Я не понял значения пункта "имя файла с разрешенными символическими ссылками"

Кто-нибудь, пожалуйста, дайте мне понять смысл этого пункта с наглядным подходящим примером использования магической константы. __FILE__ сопровождается соответствующим объяснением.

1 ответ

Решение

Символьные ссылки (символические ссылки) являются "ярлыками", которые вы можете создать в файловой системе, чтобы указывать одну запись каталога на любую произвольную другую запись каталога. В оболочке *NIX что-то вроде:

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

Это устанавливает /baz как символическая ссылка на /foo/bar.php, Какой бы файл вы ни использовали сейчас, они фактически одинаковы.

Разрешить символические ссылки означает посмотреть на заданный путь, распознать символические ссылки в нем и заменить их фактическим путем к файлу, на который они указывают. Таким образом, независимо от того, делаете ли вы

$ php /baz

или же

$ php /foo/bar.php

__FILE__ константа будет преобразована в фактический путь к файлу /foo/bar.php,

Другие вопросы по тегам