Odpowiedzi:
getcwd();
lub
dirname(__FILE__);
lub (PHP5)
basename(__DIR__)
http://php.net/manual/en/function.getcwd.php
http://php.net/manual/en/function.dirname.php
Możesz użyć, basename()
aby uzyskać końcową część ścieżki :)
W twoim przypadku powiedziałbym, że najprawdopodobniej chcesz go użyć getcwd()
, dirname(__FILE__)
jest bardziej przydatny, gdy masz plik, który musi zawierać inną bibliotekę i jest zawarty w innej bibliotece.
Na przykład:
main.php
libs/common.php
libs/images/editor.php
W swoim common.php
musisz używać funkcji w editor.php
, więc używasz
common.php
:
require_once dirname(__FILE__) . '/images/editor.php';
main.php
:
require_once libs/common.php
W ten sposób, gdy common.php jest require'd
w main.php
, wezwanie require_once
w common.php
poprawnie obejmuje editor.php
w images/editor.php
zamiast próbować szukać w bieżącym katalogu, w którym main.php
jest prowadzony.
basename(getcwd())
__DIR__
jest to ścieżka dołączonego pliku, a NIE bieżący katalog
basename(__DIR__)
oszczędził mi dzień. Wielkie dzięki za udostępnienie!
echo basename(__DIR__); will return the current directory name only
echo basename(__FILE__); will return the current file name only
Na przykład
Your Path = /home/serverID_name/www/your_route_Dir/
THIS_is_the_DIR_I_Want
DUSZA, KTÓRA DZIAŁA:
$url = dirname(\__FILE__);
$array = explode('\\\',$url);
$count = count($array);
echo $array[$count-1];
Właściwie znalazłem najlepsze rozwiązanie:
$cur_dir = explode('\\', getcwd());
echo $cur_dir[count($cur_dir)-1];
jeśli twój katalog to www \ var \ path \ Current_Path
to zwraca Current_path
PATH_SEPARATOR
$myVar = str_replace('/', '', $_SERVER[REQUEST_URI]);
libs / images /index.php
Wynik: obrazy
Jeśli masz PATH i nie chcesz martwić się, czy Twój skrypt działa w folderze, który Cię interesuje, to działa:
basename(parse_url($_GET['dir_link'])['path'],PHP_URL_PATH)
basename(__DIR__)
w PHP 5