Ho una pagina php all'interno di una cartella sul mio sito web.PHP Ottieni il nome della directory corrente
ho bisogno di aggiungere il nome della directory corrente in una variabile, ad esempio:
$myVar = current_directory_name;
è possibile?
Ho una pagina php all'interno di una cartella sul mio sito web.PHP Ottieni il nome della directory corrente
ho bisogno di aggiungere il nome della directory corrente in una variabile, ad esempio:
$myVar = current_directory_name;
è possibile?
getcwd();
or
dirname(__FILE__);
or (PHP5)
basename(__DIR__)
http://php.net/manual/en/function.getcwd.php
http://php.net/manual/en/function.dirname.php
È possibile utilizzare basename()
per ottenere la parte finale del percorso :)
Nel tuo caso, direi che è più probabile cercando di utilizzare getcwd()
, dirname(__FILE__)
è più utile quando si dispone di un file che deve includere un'altra libreria ed è incluso in un'altra libreria.
Esempio:
main.php
libs/common.php
libs/images/editor.php
nel vostro common.php
è necessario utilizzare le funzioni in editor.php
, in modo da utilizzare
common.php:
require_once dirname(__FILE__) . '/images/editor.php';
main.php
require_once libs/common.php
In questo modo quando common.php è require'd
in main.php
, la chiamata di require_once
in common.php
includerà correttamente editor.php
in images/editor.php
anziché cercare nella directory corrente in cui viene eseguito il numero main.php
.
per esempio
Your Path = /home/serverID_name/www/your_route_Dir/
THIS_is_the_DIR_I_Want
Un soultion che funziona:
$url = dirname(\__FILE__);
$array = explode('\\\',$url);
$count = count($array);
echo $array[$count-1];
L'OP sembra aver già accettato una risposta al loro problema. Anche se hai chiaramente aggiunto valore, hai bisogno di sfogare le tue mitragliette qui? – Dutts
http://stackoverflow.com/help/formatting spiegherà come fare le cose ** in grassetto ** evitando l'uso di caps, che hai giustamente sottolineato indica che urla su internet. – Dutts
In realtà ho trovato il miglior solutio n è il seguente:
$cur_dir = explode('\\', getcwd());
echo $cur_dir[count($cur_dir)-1];
se il dir è www \ var \ percorso \ Current_Path
allora questo restituisce Current_path
Attenzione, nei server Linux non usiamo il backslash ma la barra. PHP ha una costante magica per renderlo multipiattaforma, vedi 'PATH_SEPARATOR' – renoirb
echo basename(__DIR__); will return the current directory name only
echo basename(__FILE__); will return the current file name only
Finché hai PHP 5.3 o superiore –
Per ottenere solo il nome della directory dove lo script è stato eseguito:
//Path to script: /data/html/cars/index.php
echo basename(dirname(__FILE__)); //"cars"
$ myVar = str_replace ('/', '', $ _ SERVER [REQUEST_URI]);
librerie/immagini /index.php risultato: immagini
Questo ha funzionato per me quindi ho votato la persona che ha votato senza alcuna spiegazione. L'overflow dello stack ha alcuni degli utenti più schifati della rete. Boooo Hisssssssssssss – warmwhisky
E 'basename (__ DIR __) 'in PHP 5 – Xeoncross
@Xeoncross grazie per la segnalazione :) –
Questo sono io dando l'intero percorso . C'è un modo per ottenere solo il nome della directory? – Satch3000