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

Посмотрим как можно сформировать 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’] используют разный разделитель для подкаталогов (слеш и бек-слеш).

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

Поиск дубля в массиве на PHP

Июнь 20, 2017 г.

Оказывается, очень частая задача в тестовых заданиях соискателей - это поиск дубля в массиве. В зависимости от нюансов конкретного задания, могут просить: найти все дубли или один единственный дубль; использовать в решении самый быстрый алгоритм; ...

Читать

Base Auth в PHP

Ноябрь 17, 2022 г.

Рассмотрим здесь вариации с выполнением base auth. Как оказывается из опыта работы с некоторыми API, они не являются эквивалентными. И одна форма запроса может не работать, в то время как другая будет выполняться. Задача следующая - получить содержимое ...

Читать

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

Март 10, 2013 г.

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

Читать

Как пользоваться flock()?

Март 24, 2017 г.

Если вы решаете задачу конкурентного доступа к файлу (или какому то другому ресурсу) в PHP, и решили использовать flock() для этой цели, то вам понадобится верно представлять как работает механизм блокировки. Представим себе, что есть разные программные ...

Читать
 

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

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



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