[PHP-Regex] Capture d'un nom de dossier


akufnx
WRInaute discret
WRInaute discret
 
Messages: 59
Inscription: 14 Juin 2005

[PHP-Regex] Capture d'un nom de dossier

Message le Dim Avr 15, 2007 10:31

Bonjour à tous.

Je m'excuse de faire appel à vous pour un problème qui peut sembler aussi banal, mais cela fait plusieurs heures que je me penche sur la question et je n'obtient pas le résultat attendu.

Voici la situation :

Sur mon site, l'url de la page d'accueil d'un dossier peut prendre la forme :
http://loulou.domaine.org/dossier1/
ou http://loulou.domaine.org/dossier1/index.php

et je voudrai simplement récupérer le nom du dossier dans une variable par exemple $dossier qui ici vaudrait 'dossier1'.

Voila, le problème est en apparence simpliste mais je n'y parviens pas.

J'ai essayé plusieurs choses, voici la dernière en date :

$dossier = preg_replace('#/(\w+)/(.*)#', '.$1', $_SERVER['REQUEST_URI']);

c'est celle qui marche le mieux, j'obtiens bien le nom du dossier mais précédé d'un point, ici ce serai : '.dossier1'

Sachant que $_SERVER['REQUEST_URI'] vaut /dossier/index.php ou /dossier1/ suivant les cas.

En quelques sortes, il suffit de faire disparaitre le point, mais j'aimerai y arriver avec une Regx normale.

Merci pour votre aide !


akufnx
WRInaute discret
WRInaute discret
 
Messages: 59
Inscription: 14 Juin 2005

Message le Dim Avr 15, 2007 11:11

Merci, je me suis débrouillé comme un grand avec substr().

A la prochaine !

honolulu
WRInaute impliqué
WRInaute impliqué
 
Messages: 942
Inscription: 8 Nov 2005

Message le Dim Avr 15, 2007 11:13

peut-être mais je ne vois pourquoi tu tiens à utliser des regex là où PHP a prévu une fonction native :

Code: Tout sélectionner
$dossier=basename(dirname($_SERVER[PHP_SELF]));


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 2 invités