При доступеPublic URL из PHP страницы
www.example.com/test1/test2/index.php
(файл /var/www/website1/test1/test2/index.php
на сервере)
мы получаем:
<base href="<?php echo __DIR__; ?>">
// bad: <base href="/var/www/website1/test1/test2/">
<base href="<?php echo dirname($_SERVER['REQUEST_URI']); ?>">
// bad: <base href="/test1/test2">
// a <base href> dir must end with a/(or \ on Windows)
<base href="<?php echo rtrim(dirname(parse_url($_SERVER['PHP_SELF'], PHP_URL_PATH)), '/') . '/'; ?>">
// good: <base href="/test1/test2/">
Последнее решение работает (*), но Я нахожу это немного грязным/взломанным. Есть ли более чистое решение для установки <base href="...">
текущего файла PHP-файла?
(*) На самом деле, последнее решение не работает на серверах Windows, так как добавление '/' ломает ('\' это должно быть) <base href>
.
Какое значение вам нужно? неясно, на ваш вопрос. –
@PedroLobito Я хочу установить ' ' текущий каталог файла PHP (этот каталог должен заканчиваться '/' или '\' в зависимости от формы) –
Basj
Проверьте мой ответ, из 3 вариантов работы для вас? –