Это должно быть так просто, но я немного тупик относительно наилучшего подхода к этому.Получить путь к изображению, созданному с помощью GD Lib PHP
Я создаю плагин PHP, поэтому я не могу жестко кодировать любые пути. Мне также нужно рассмотреть http-протоколы (http/https). Я использую GD Lib для создания и сохранения изображения. Моя структура каталогов выглядит следующим образом:
public_html > php_plugin > php_classes > php_class.php
public_html > php_plugin > saved_images
Плагин устанавливается в public_html
. Я запускаю код для сохранения изображения в php_class.php
. Здесь я сохраняю изображение так: '../saved_images/imagename.jpg'
. Это прекрасно работает, и изображение сохраняется в правильном каталоге.
Затем я возвращаю этот путь через AJAX для отображения изображения. И, очевидно, этот путь не решает, и я получаю сломанную ссылку на изображение: http://www.website.com/saved_images/imagename.jpg
Он должен выглядеть следующим образом: http://www.website.com/php_plugin/saved_images/imagename.jpg
Так в моем PHP класс, где я создал безопасный путь как я строю вверх путь что я могу вернуться с AJAX, имея в виду, что это плагин и может использоваться на разных сайтах.
EDIT:
Для записи я знаю, что могу использовать $_SERVER['SERVER_NAME']
и $_SERVER['SERVER_PROTOCOL']
, но на основе этих SO вопросов (PHP $_SERVER['HTTP_HOST'] vs. $_SERVER['SERVER_NAME'], am I understanding the man pages correctly? и PHP Get Site URL Protocol - http vs https) Я думаю, что этот подход будет весьма ненадежны как сервер конфиги где плагин будет быть размещенным будет неизвестно.