Ajouter un paramètre à l’URL courante en PHP
Il est parfois nécessaire d’ajouter un paramètre à l’URL courante en PHP, sans se préoccuper des potentiels paramètres existants, et surtout sans vouloir les supprimer. Pour cela, la fonction suivante fusionne les paramètres existants avec un tableau associatif de ceux à ajouter.
Cela peut être particulièrement utile pour la création d’une pagination, lorsque les éléments affichés sont issus d’une recherche.
1 2 3 4 5 |
function addUrlParam($params=array()){ $p = array_merge($_GET, $params); $qs = http_build_query($p); return basename($_SERVER['PHP_SELF']).'?'.$qs; } |
Exemples d’utilisation
Ajout d’un paramètre :
1 2 3 |
// URL actuelle : http://www.monsite.com?search=test echo addUrlParam(array('page'=>2)); // http://www.monsite.com?search=test&page=2 |
Remplacement d’un paramètre :
1 2 3 |
// URL actuelle : http://www.monsite.com?search=test&page=2 echo addUrlParam(array('page'=>3)); // http://www.monsite.com?search=test&page=3 |
Ajout et remplacement de plusieurs paramètres :
1 2 3 |
// URL actuelle : http://www.monsite.com?search=test&page=3 echo addUrlParam(array('page'=>4, 'order'=>'price')); // http://www.monsite.com?search=test&page=4&order=price |