У меня есть php-страница внутри папки на моем сайте.
Мне нужно добавить имя текущего каталога в переменную, например:
$myVar = current_directory_name;
Это возможно?
getcwd(); or dirname(__FILE__); or (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
.
Например
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
Чтобы получить только имя каталога, в котором выполняется скрипт:
//Path to script: /data/html/cars/index.php echo basename(dirname(__FILE__)); //"cars"
$ myVar = str_replace ('/', '', $ _ SERVER [REQUEST_URI]);
libs / images /index.php результат: изображения