Réponses:
getcwd();
ou
dirname(__FILE__);
ou (PHP5)
basename(__DIR__)
http://php.net/manual/en/function.getcwd.php
http://php.net/manual/en/function.dirname.php
Vous pouvez utiliser basename()pour obtenir la partie arrière du chemin :)
Dans votre cas, je dirais que vous cherchez probablement à utiliser getcwd(), dirname(__FILE__)est plus utile lorsque vous avez un fichier qui doit inclure une autre bibliothèque et est inclus dans une autre bibliothèque.
Par exemple:
main.php
libs/common.php
libs/images/editor.php
Dans votre, common.phpvous devez utiliser des fonctions dans editor.php, donc vous utilisez
common.php:
require_once dirname(__FILE__) . '/images/editor.php';
main.php:
require_once libs/common.php
De cette façon, lorsque common.php est require'ddans main.php, l'appel de require_oncein common.phpinclura correctement editor.phpdans images/editor.phpau lieu d'essayer de chercher dans le répertoire courant où main.phpest exécuté.
basename(getcwd())
__DIR__est le chemin du fichier inclus et PAS le répertoire courant
basename(__DIR__) sauvé la journée pour moi. Merci beaucoup pour le partage!
echo basename(__DIR__); will return the current directory name only
echo basename(__FILE__); will return the current file name only
Par exemple
Your Path = /home/serverID_name/www/your_route_Dir/
THIS_is_the_DIR_I_Want
Une Soultion qui FONCTIONNE:
$url = dirname(\__FILE__);
$array = explode('\\\',$url);
$count = count($array);
echo $array[$count-1];
En fait, j'ai trouvé que la meilleure solution est la suivante:
$cur_dir = explode('\\', getcwd());
echo $cur_dir[count($cur_dir)-1];
si votre répertoire est www \ var \ path \ Current_Path
alors cela retourne Current_path
PATH_SEPARATOR
$myVar = str_replace('/', '', $_SERVER[REQUEST_URI]);
libs / images /index.php
Résultat: images
Si vous avez PATH et que vous ne voulez pas vous inquiéter si votre script fonctionne dans le dossier qui vous intéresse, alors cela fonctionne:
basename(parse_url($_GET['dir_link'])['path'],PHP_URL_PATH)
basename(__DIR__)en PHP 5