У меня есть php-страница внутри папки на моем веб-сайте.
Мне нужно добавить имя текущего каталога в переменную, например:
$myVar = current_directory_name;
Возможно ли это?
У меня есть php-страница внутри папки на моем веб-сайте.
Мне нужно добавить имя текущего каталога в переменную, например:
$myVar = current_directory_name;
Возможно ли это?
getcwd();
или же
dirname(__FILE__);
или (PHP5)
basename(__DIR__)
http://php.net/manual/en/function.getcwd.php
http://php.net/manual/en/function.dirname.php
Вы можете использовать basename()
чтобы получить завершающую часть пути :)
В вашем случае, я бы сказал, что вы, скорее всего, хотите использовать getcwd()
, dirname(__FILE__)
более полезен, когда у вас есть файл, который должен включать в себя другую библиотеку и включен в другую библиотеку.
Например:
main.php
libs/common.php
libs/images/editor.php
В вашем common.php
вам нужно использовать функции в editor.php
, поэтому вы используете
common.php
:
require_once dirname(__FILE__) . '/images/editor.php';
main.php
:
require_once libs/common.php
Таким образом, когда common.php require'd
в main.php
, вызов require_once
в common.php
будет правильно включать editor.php
в images/editor.php
вместо попытки поиска в текущем каталоге, где main.php
.
Чтобы получить только имя каталога, в котором выполняется script:
//Path to script: /data/html/cars/index.php
echo basename(dirname(__FILE__)); //"cars"
ПРИМЕР
Your Path = /home/serverID_name/www/your_route_Dir/
THIS_is_the_DIR_I_Want
Душа, которая РАБОТАЕТ:
$url = dirname(\__FILE__);
$array = explode('\\\',$url);
$count = count($array);
echo $array[$count-1];
echo basename(__DIR__); will return the current directory name only
echo basename(__FILE__); will return the current file name only
На самом деле я нашел лучшее решение:
$cur_dir = explode('\\', getcwd());
echo $cur_dir[count($cur_dir)-1];
если ваш каталог: www\var\path\ Current_Path
то возвращается Current_path
$myVar = str_replace('/', '', $_SERVER[REQUEST_URI]);
libs/images/index.php
Результат: изображения