70 votes

Chaîne de requête sans arguments GET

Existe-t-il un moyen simple d'obtenir le fichier ou le répertoire demandé sans les arguments GET ? Par exemple, si l'URL est http://example.com/directory/file.php?paramater=value je voudrais renvoyer uniquement http://example.com/directory/file.php . J'ai été surpris qu'il n'y ait pas d'index simple en $_SERVER[] . J'en ai raté un ?

57voto

snm-yah Points 2067

Solution:

echo parse_url ($_SERVER["REQUEST_URI"], PHP_URL_PATH);

2voto

Ravean Points 71

Voici une solution qui prend en compte différents ports et https :

 $pageURL = (@$_SERVER['HTTPS'] == 'on') ? 'https://' : 'http://';

if ($_SERVER['SERVER_PORT'] != '80')
  $pageURL .= $_SERVER['SERVER_NAME'].':'.$_SERVER['SERVER_PORT'].$_SERVER['PHP_SELF'];
else 
  $pageURL .= $_SERVER['SERVER_NAME'].$_SERVER['PHP_SELF'];  

Ou une solution plus basique qui ne prend pas en compte les autres ports :

 $pageURL = (@$_SERVER['HTTPS'] == 'on') ? 'https://' : 'http://';
$pageURL .= $_SERVER['SERVER_NAME'].$_SERVER['PHP_SELF']; 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X