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

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

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

Регистрация/авторизация в Drupal по учетке в соц.сетях

Май 12, 2013 г.

Самое не приятное, с чем можно встретиться на многих сайтах - это регистрация учетной записи. Неприятное ощущение усиливается ещё и от контраста - везде ...

Читать

Импорт материалов из Instagram

Август 27, 2018 г.

У instagram есть API, который устареет до конца 2018 года. Всех пересаживают на новую платформу -  Instagram Graph API. Регистрация приложения на этой ...

Читать

Удаление элементов из массива в PHP

Ноябрь 11, 2015 г.

Массивы в PHP - один из мощнейших инструментов программиста. Когда я начинал изучать PHP, у меня был определенный багаж знаний работы с массивами в других языках программирования, таких как C++, Delphi и Fortrain. Везде требовалось объявить массив, указать ...

Читать

CURL выдаёт SSL certificate problem, что делать?

Февраль 12, 2017 г.

Если при отправке запроса через CURL по https, вы получаете следующую ошибку: [crayon-6ad9372ac3f4c603580819/] То можно отключить соответствующие проверки, выключив в опциях следующие флаги -SSL_VERIFYHOST, SSL_VERIFYPEER. [crayon-6ad9372ac3f52017144853/] ...

Читать
 

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

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



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