Недавно я смотрел видеоурок по php, и автор показывал, как включить файл. Он использовал XAMPP для демонстраций и имел много файлов.
Когда он показывал, как включить файл, он упомянул кое-что о размещении двух точек (..) перед путем к файлу (/xampp/content/example.html) из-за того, что что-то связано с тем, где находятся файлы, предполагая, что я уже знал об этом принципе. Но я не
Может кто-нибудь объяснить, что происходит с одной точкой или двумя точками перед путями к файлам?
В чем разница между include("/xampp/content/example.html");
, include("./xampp/content/example.html");
, а также include("../xampp/content/example.html");
В среде Linux / Unix,
/xampp/content/example.html
означает абсолютный путь
./xampp/content/example.html
означает относительный путь к текущему каталогу
../xampp/content/example.html
означает относительный путь родительского каталога
Для структуры папок: /var/www/xampp/content/example3.html
:
Если ваша текущая папка /var/www/
…
../
(поднимается на 1 уровень) будет /var/
./
(на текущем уровне) будет /var/www/
/
будет /
(в Linux /
означает корень сервера, внешнюю структуру файловой системы)../../
(поднимается на 2 уровня) будет /
Есть 2 типа путей: Относительный путь & Абсолютный Путь.
Относительный путь — это относительно вашего текущего каталога. По абсолютному пути он не связан с вашим текущим каталогом.
.
означает тот же каталог, что и скрипт, который выполняет включение, ..
означает родительский каталог, содержащий скрипт. Так ../xampp/content/example.html
означает перейти на один уровень вверх по папке из текущего скрипта, а затем перейти в его xampp/content
подкаталог для поиска example.html
,
Путь, начинающийся с /
это абсолютный путь от корня сервера. Использование абсолютных путей затрудняет перемещение вашего проекта в новый каталог, потому что вам нужно обновить все пути. Относительные пути позволяют вам перемещать все как группу без изменения путей, потому что отношения каталога останутся прежними.