Формируем относительную ссылку

Посмотрим как можно сформировать url относительно текущего местоположения файла в php.

К примеру, у в каталоге /site-script/ находится программа на PHP  и подкаталог /site-script/img, где хранятся картинки.

Требуется построить относительный путь для изображений. Т.е. получить /site-script/img/picture_name.ext — url, который можно выводить в шаблоне.

Константа __FILE__

Определить путь файла скрипта позволяется системная константа __FILE__, которая хранит имя файла текущего скрипта и полный его путь.

Допустим, полный путь к программе выглядит так:

тогда dirname(__FILE__) вернет нам:

Если добавить к нему /img/picture_name.ext, то мы получим системный путь картинки на нашем сервере.

Используем $_SERVER[‘DOCUMENT_ROOT’]

Нам нужно избавиться от части пути, которая совпадает с $_SERVER[‘DOCUMENT_ROOT’]. Можно использовать замену, но мы выбираем substr():

Использование substr позволяет в частности не заботиться о том, что, к примеру, в WINDOWS окружении __FILE__ и $_SERVER[‘DOCUMENT_ROOT’] используют разный разделитель для подкаталогов (слеш и бек-слеш).

Мало букафф? Читайте есчо !

Выделение короткой строки-аннотации из HTML статьи

Март 10, 2013 г.

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

Читать

Чтение даты-времени из строки

Февраль 27, 2019 г.

Это частая задача возникает при чтении логов, пользовательских данных и .т.п. PHP даёт пару отличных инструментов, для её решения. Функция strtotime() Эта функция с довольно сложным функционалом, пытается определить не только формат пользовательского ...

Читать

Как получить HTTP код ответа удаленного веб-сервера из PHP?

Июнь 23, 2018 г.

Когда требуется получить HTTP код для заданной URL, то вы наверняка воспользуетесь PHP функцией get_headers($url). Дальше я расскажу о разных подводных ...

Читать

Работаем с датами широкого диапазона в PHP

Январь 28, 2016 г.

Многие не задумываются при работе в PHP со стандартными функциями даты-времени о диапазоне их применимости (date(), time(), mktime() и т.п). Так мы можем скоро столкнуться с проблемой, подобная которой случалась уже раньше - "ошибка 2000". Я прекрасно ...

Читать
 

Комментарии к «Формируем относительную ссылку»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: