[PHP] Функция require_once

В теме 2 сообщения

День добрый, не могу понять как правильно использовать функцию require_once в PHP, а т.е как правильно прописывать путь к файлам.

Например: Мне нужно что бы файл test1.ru/engine/config/database.php вызывался в файле test1.ru/view/main/monitoring

 

Не могу понять, как правильно прописывать пути

require_once('/../../config/database.php'); Для чего в этой строке точки? "/../../"

 

Буду благодарен, если объясните. Ну а так же с меня +сик:)))

Отредактировано пользователем Shakoladka

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
6 часов назад, Shakoladka сказал:

test1.ru/engine/config/database.php

и 

 

6 часов назад, Shakoladka сказал:

test1.ru/view/main/monitoring

это веб-адреса, а не пути к файлам. Файлы лежат в файловой системе сервера и в общем случае url и путь к файлу не совпадает. 

Например, 

файл расположен по адресу: /home/admin/web/test.ru/public_html/index.php (для Linux-сиситем)

а в соответствии с настройками веб-сервера, доступ к нему будет по URL: test.ru/index.php

 

Что касается косой черты и точек, то это относительные пути. 

Спойлер

Что такое относительный путь к файлу

С относительным адресом всё намного интереснее — он может отсчитываться как от корня сайта, так и от текущего документа. Корневой относительный путь — это путь, который указывает на расположение файла относительно корневого каталога сайта. В этом случае адрес не содержит ни протокола, ни имени домена, и начинается со знака слэша /, который указывает на корневую папку. Выглядит этот адрес так:


background-image: url(/img/bg.png);

Как легко определить корневой относительный адрес? Просто возьмите абсолютную ссылку и уберите из нее протокол и название домена, оставив слэш и все символы, которые идут дальше.

Относительный путь к файлу от документа — это путь к файлу относительно текущего документа. Такой адрес зависит от расположения файла, в котором он записан. Так, когда относительная ссылка указывается в та­блице стилей, она рассчитывает путь к файлу, отталкиваясь от таблицы стилей, а не от текущей веб-страницы либо корневой папки. Приведем несколько примеров.
 

ПРИМЕР I
path-1.png

Если наша таблица стилей style.css и файл с фоновым рисунком bg.png находятся в одной папке (не обязательно корневой), то относительный путь от таблицы до рисунка будет выглядеть так:


    background-image: url(bg.png); /* вы просто пишете имя файла */
    

 

ПРИМЕР II
path-2.png

Если таблица стилей находится в корне, а рисунок — в папке img, относительная ссылка будет таковой:


	background-image: url(img/bg.png); /* слэш в начале не нужен */
    

 

ПРИМЕР III
path-3.png

Если таблица стилей находится в папке, а рисунок соседствует с этой папкой, то относительный путь будет таким:


	background-image: url(../bg.png); /* две точки — подняться на один уровень */
    

 

ПРИМЕР IV
path-4.png

Если таблица стилей находится в двух папках, а рисунок соседствует с первой папкой, то относительный путь будет следующий:


	background-image: url(../../bg.png); /* поднимаемся на два уровня */
    

Две точки и слэш в начале относительного пути означают подъем на один уровень вверх. В зависимости от количества уровней (каталогов), на которые нужно подняться, необходимо прописать нужное количество точек со слэшом. К примеру, если таблица стилей лежит не в двух, а в четырех папках, запись, соответственно, будет следующей:


background-image: url(../../../../bg.png);

В том случае, когда рисунок спрятан в папку img, а таблица стилей — в папку css, вам понадобится выйти из папки css и зайти в папку img. Вот так:


background-image: url(../img/bg.png);

Если папок несколько, необходимо также прописать их. Изменим предыдущий пример: представим, что в папке img есть еще одна папка backgrounds, в которой лежит наш рисунок. Относительный путь будет таким:


background-image: url(../img/backgrounds/bg.png);

 

ИСТОЧНИК: https://idg.net.ua/blog/uchebnik-css/ispolzovanie-css/otnositelnyj-i-absolyutnyj-put-k-fajlu

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Эта тема закрыта для публикации ответов.

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу