Page 1 sur 1

[Résolu] déterminer le nom du dossier à partir d'un chemin r

Posté : 08 mai 2009, 05:52
par neeteex
Bonjour,

Je cherche à retrouver le nom du dossier pointé par la variable $dossier qui a été renseignée à l'aide d'un chemin relatif.

Par exemple, disons que je travail depuis un script inclus dans "factures_2000.html" et que je veux définir une variable $dossier contenant le nom du dossier pointé par ".." (le résultat serait la chaine "documents") puis un peu plus tard celui qui est pointé par "../autres_fichiers/pages" (le résultat serait la chaine "pages") et encore plus tard la racine du site pointée par ../.. (le résultat serait la chaine "www")

Comment m'y prendre ?

Code : Tout sélectionner

www | |-- index.html | |-- documents | |-- archives | | |-- factures_2000.html | | |-- factures_1999.html | | | |-- comptabilite.html | |-- factures.html | |-- autres_fichiers |-- pages | |-- accueil.html | |-- horaires.html | |-- contact.html | |-- images |-- logo.jpg |-- mail.png |-- banniere.swf

Posté : 08 mai 2009, 11:11
par Nours312
dirname() ... c'est ça ?

Posté : 08 mai 2009, 11:35
par neeteex
dirname() ... c'est ça ?
Ca aurait pu, mais quand j'ai essayé un

Code : Tout sélectionner

$dossier = '..' ; echo dirname($dossier) ;
J'ai eu droit à un pathétique '.' (alors que je voulais ("documents")

Donc si c'est faisable avec dirname, j'ai pas trouvé comment... :?

Posté : 08 mai 2009, 12:43
par thehawk
et un dirname(realpath("..")); ?

EDIT :

Plutôt un
$lien = explode("\\" ,realpath(".."));
$thelast  = count($lien) - 1;
echo "Je viens de : ".$lien[$thelast];
Bye hawk

Posté : 08 mai 2009, 13:31
par neeteex
Merci The Hawk :)

Je sais pas pourquoi tu fais un explode sur "\\" au lieu de "/" mais j'ai gardé l'idée :wink:

Code : Tout sélectionner

$folder = ".." ; $lien = explode("/" ,realpath($folder)); $thelast = count($lien) - 1; echo "Je viens de : ".$lien[$thelast];

Posté : 08 mai 2009, 13:35
par thehawk
Parceque je suis sous windows et que bon l'adresse des fichiers sous windows est de la forme :

Code : Tout sélectionner

C:\wamp\www\
Voila et si on évité le troll que je vois arriver ?

Posté : 08 mai 2009, 13:38
par neeteex
Voila et si on évité le troll que je vois arriver ?
J'ai rien dit !
C'est plutôt moi qui fait comme si tout le php du monde était destiné au web (1ere erreur ), et que tout le web du monde tournait sous linux (2eme erreur).
Donc mille excuses, ça coulait de [la] source. (c'est le cas de le dire :wink: )