определить директорию с исполняемым ПХП

Levitt

Профессор
Регистрация
20 Май 2008
Сообщения
361
Реакции
43
Напишите, пожалуйста, способ определение относительно хттп домена директории в которой исполняется скрипт.
т.е.
выполняем скрипт _http://site.com/fold_1/fold_2/script.php
получаем /fold_1/fold_2/
п.с. как вариант подойдет и название исполняемого файла без директорий "script.php"
 
Напишите, пожалуйста, способ определение относительно хттп домена директории в которой исполняется скрипт.
т.е.
выполняем скрипт _http://site.com/fold_1/fold_2/script.php
получаем /fold_1/fold_2/
п.с. как вариант подойдет и название исполняемого файла без директорий "script.php"
используй массив $_SERVER[] например $_SERVER['SCRIPT_FILENAME']
 
Как вариант, можно использовать $_SERVER[’SCRIPT_NAME’].
Результаты:
_http://www.yoursite.com/example/ -> /example/index.php
_http://www.yoursite.com/example/index.php -> /example/index.php
_http://www.yoursite.com/example/index.php?a=test -> /example/index.php
_http://www.yoursite.com/example/index.php/dir/test -> /example/index.php
 
выполняем скрипт _http://site.com/fold_1/fold_2/script.php получаем /fold_1/fold_2/
Не всегда так. УРЛ fold_1/fold_2/script.php не обязательно будет указывать, что script.php находится внутри /fold_1/fold_2/, это может быть mod_rewrite. Поэтому лучше использовать dirname(__FILE__), getcwd() и т.п. в зависимости от нужд.
 
Дело в том, что все выше упомянутые способами вмещают в себя также название файла со скриптом, что как-раз и мешает.

В глобальном - то хочу сделать автопинг сайтмапы... сайтмапа есть, а вот передать её через пост-запросом не могу. К тому же название файла и внутренней директории не статическое, т.е. просто взять и заменить название на sitemap.xml опять не подходит.
 
PHP:
<?php
$papka = str_replace(basename($_SERVER['SCRIPT_NAME']),'',$_SERVER['SCRIPT_NAME']);
echo $papka;
как вариант подойдет и название исполняемого файла без директорий "script.php"
PHP:
echo basename($_SERVER['SCRIPT_NAME']);
 
кусок рабочего кода:

С обрезкой лишнего я думаю справишься сам, к примеру функцией parse_url()
 
Назад
Сверху