Souvent, il existe des situations où vous devez transmettre un tableau à un script via un paramètre d'URL. Il existe différentes approches pour résoudre ce problème, chacune avec ses propres avantages et inconvénients.
Approches naïves
Tenter de transmettre un tableau en tant que paramètre d'URL sans aucun traitement peut conduire à des résultats désordonnés. La concaténation des valeurs en une seule chaîne entraîne un paramètre peu maniable :
$url = 'http://www.example.com?aParam[]=value1&aParam[]=value2&aParam[]=value3';
La fonction http_build_query()
Heureusement, PHP fournit une solution pratique : la http_build_query( ) fonction. Il prend un tableau associatif en entrée et renvoie une chaîne de requête codée en URL.
$data = array( 1, 4, 'a' => 'b', 'c' => 'd' ); $query = http_build_query(array('aParam' => $data));
Cela produira la chaîne de requête suivante :
aParam%5B0%5D=1&aParam%5B1%5D=4&aParam%5Ba%5D=b&aParam%5Bc%5D=d
Remarquez comment la fonction gère automatiquement les éléments nécessaires s'échapper ([ => [ et ] => ]). Cela garantit que la chaîne de requête est correctement formée.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!