Respostas:
getcwd();
ou
dirname(__FILE__);
ou (PHP5)
basename(__DIR__)
http://php.net/manual/en/function.getcwd.php
http://php.net/manual/en/function.dirname.php
Você pode usar basename()
para obter a parte final do caminho :)
No seu caso, eu diria que você provavelmente está procurando usar o getcwd()
, dirname(__FILE__)
é mais útil quando você tem um arquivo que precisa incluir outra biblioteca e está incluído em outra biblioteca.
Por exemplo:
main.php
libs/common.php
libs/images/editor.php
Em seu, common.php
você precisa usar funções em editor.php
, então você usa
common.php
:
require_once dirname(__FILE__) . '/images/editor.php';
main.php
:
require_once libs/common.php
Dessa forma, quando common.php estiver require'd
em main.php
, a chamada de require_once
in common.php
incluirá corretamente editor.php
em em images/editor.php
vez de tentar procurar no diretório atual onde main.php
é executado.
basename(getcwd())
__DIR__
é o caminho do arquivo incluído e NÃO o diretório atual
basename(__DIR__)
salvou o dia para mim. Muito obrigado por compartilhar!
echo basename(__DIR__); will return the current directory name only
echo basename(__FILE__); will return the current file name only
Por exemplo
Your Path = /home/serverID_name/www/your_route_Dir/
THIS_is_the_DIR_I_Want
Uma alma que FUNCIONA:
$url = dirname(\__FILE__);
$array = explode('\\\',$url);
$count = count($array);
echo $array[$count-1];
Na verdade, descobri que a melhor solução é a seguinte:
$cur_dir = explode('\\', getcwd());
echo $cur_dir[count($cur_dir)-1];
se o seu diretório for www \ var \ path \ Current_Path
então isso retorna Current_path
PATH_SEPARATOR
$myVar = str_replace('/', '', $_SERVER[REQUEST_URI]);
libs / images /index.php
Resultado: imagens
Se você tem PATH e não quer se preocupar se o seu script funciona na pasta em que está interessado, faça o seguinte:
basename(parse_url($_GET['dir_link'])['path'],PHP_URL_PATH)
basename(__DIR__)
em PHP 5