Что означает точка в php функции get_include_path?

вопрос от Саша 16.01.2023 22:35

Изучаю раздел посвященный работе с путями в php. Читаю про функции get_include_path и set_include_path.

Если написать var_dump(get_include_path()), то получаю следующую строку: string(13) ".;C:\php\pear"

Что означает первая точка?

2 ответа

Правила ответов

Ваш ник: Аноним (вход на сайт)

Ваш email (не отобразится на сайте)

Оборачивайте код в тег [code][/code]
ответ от Аноним 16.01.2023 23:56

Первая точка означает, что поиск файла, который вы укажете в include, require и т.д. будет в текущей директории.

Но, если почитать документацию PHP, https://www.php.net/manual/en/function.include.php то даже если вы не укажете точку, PHP все равно будет искать файл в текущей директории. Как минимум мои тесты в Windows с использованием Apache это подтверждают. Даже если убрать точку, файл в текущей директории все равно будет включен, если он нашелся.

ответ от Аноним 20.01.2023 20:37

Как уже сказали ранее, точка это поиск в текущей директории. Но конкретно здесь она еще влияет на приоритет поиска. Так, если убрать ее, то поиск будет идти сначала с пути, который вы укажете в set_include_path и если файла там не будет, то PHP попробует поискать файл в текущей директории.

Если же точка стоит вначале, то PHP снчала будет искать файл в текущей директории и только потом посмотрит пути, которые вы укажете в set_include_path()