Vous pouvez utiliser parse_str
comme cela a déjà été mentionné.
De plus, si vous voulez les remettre dans une chaîne de requête, vous pouvez utiliser http_build_query
Ejemplo:
parse_str('bikeType=G&nikeNumber=4351', $params);
$params['bikeType'] = 'F';
$params['nikeNumber'] = '1234';
echo http_build_query($params, '', '&');
Sortie
bikeType=F&nikeNumber=1234
Veuillez noter que vous ne devez pas utiliser parse_str
sans le deuxième argument (ou du moins pas avec une certaine considération). Si vous ne le faites pas, PHP créera des variables à partir des paramètres de la requête dans la portée actuelle. Cela peut conduire à des problèmes de sécurité. Les utilisateurs malveillants peuvent l'utiliser pour écraser d'autres variables, par exemple
// somewhere in your code you assigned the current user's role
$role = $_SESSION['currentUser']['role'];
// later in the same scope you do
parse_str('bikeType=G&nikeNumber=4351&role=admin');
// somewhere later you check if the user is an admin
if($role === "admin") { /* trouble */ }
Autre remarque : l'utilisation du troisième paramètre pour http_build_query
est recommandé, car l'encodage approprié pour une esperluette est &
. Certains validateurs se plaindront si vous ne mettez que l'élément &
là-dedans.