hello

J'ai un petit problème ...
j'ai beau chercher sur internet, mais je ne trouve pas mon bonheur

Soit un site ou les url's seront du type http://www.monsite.be/site/section1/section2/section3
mais avec un nombre de sections pouvant aller de 0 (racine) à 3

J'ai fait de l'url rewrite pour que tout ce qui suit http://www/monsite.be/site/ soit redirigé sur une page index.php
pour se faire, dans le .htaccess du repertoire site, j'ai mis ceci:


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
<IfModule mod_rewrite.c>   
 RewriteEngine On   
 RewriteBase /site/   
 RewriteCond %{REQUEST_FILENAME} !-f   
 RewriteCond %{REQUEST_FILENAME} !-d 
 RewriteRule . /site/index.php [L]   
 </IfModule>

--> donc
avec une page de test index.php comme ceci:


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
<html> 
<head><body> 
<?php 
echo "<p>"; 
echo "PHP_SELF " . $_SERVER["PHP_SELF"]; 
echo "<br/>REQUEST_URI " . $_SERVER["REQUEST_URI"]; 
echo "<br/>QUERY_STRING " . $_SERVER["QUERY_STRING"]. "</p>"; 
?> 
</body> 
</html>

j'obtiens pour l'url
http://www.monsite.be/site/europe/belgique/mons
un résultat comme celui-ci:


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
monsite.be ... en construction page de test 
 
PHP_SELF /site/index.php 
REQUEST_URI /site/europe/belgique/mons 
QUERY_STRING

Maintenant, je voudrais parser la REQUEST_URI pour extraire les 3 variables dans un tableau qui contiendrait en index 'arg1' --> europe
'arg2' --> belgique et 'arg3" --> mons

et c'est là que ca coince ...

je ne réussit pas à les extraire, je m'embrouille dans les regexp en php

Parce que les contraintes sont:
1) nombre de sous-niveau variable (de 0 à 3)
2) il pourrait y avoir un / final après chaque niveau
3) il pourrait y avoir un .php après chaque niveau
( http://www.monsite.be/site/europe/belgique/mons.php )
4) Les variables doivent être suffisament générique, et pouvoir être utilisée partout ... donc, dans un tableau global, avec des index du genre arg1, arg2, arg3

Quelqu'un pourrait m'aider? :-) je touille et je n'arrive pas à faire ce que je veux

merci