Maison  >  Article  >  développement back-end  >  Comment convertir entre des tableaux et des chaînes de paramètres d'URL en php

Comment convertir entre des tableaux et des chaînes de paramètres d'URL en php

PHPz
PHPzoriginal
2023-04-19 11:37:101020parcourir

Dans le développement Web, nous avons souvent besoin de convertir des tableaux en chaînes de paramètres d'URL pour le transfert de données entre les pages ou le transfert de paramètres dans les requêtes d'interface API. En PHP, nous pouvons convertir entre des tableaux et des chaînes de paramètres d'URL grâce à certaines fonctions intégrées. Ensuite, je présenterai quelques méthodes courantes pour réaliser cette fonction.

1. Convertir un tableau en chaîne de paramètres d'URL

  1. Fonction http_build_query()

La fonction http_build_query() peut convertir un tableau en chaîne de paramètres d'URL. La syntaxe de cette fonction est la suivante :

string http_build_query ( mixed $query_data , string $numeric_prefix = "" , string $arg_separator = "" , int $enc_type = PHP_QUERY_RFC1738 )

Parmi eux, le paramètre query_data est un tableau associatif ou un tableau d'index numérique contenant les données à convertir, et le paramètre numeric_prefix est le préfixe de chaîne facultatif requis pour le tableau d'index numérique. par défaut est une chaîne vide, arg_separator Le paramètre est un séparateur de paramètre facultatif, la valeur par défaut est "&", le paramètre enc_type est un format de chaîne facultatif, la valeur par défaut est PHP_QUERY_RFC1738.

Exemple de code :

<?php
$data = array(
   &#39;user&#39; => 'admin',
   'email' => 'admin@example.com',
   'age' => 18
);
$query_string = http_build_query($data);
echo $query_string;
?>

Le résultat de sortie est :

user=admin&email=admin%40example.com&age=18
  1. Séparateur et préfixe de paramètres personnalisés

Exemple de code :

<?php
$data = array(
   &#39;user&#39; => 'admin',
   'email' => 'admin@example.com',
   'age' => 18
);
$query_string = http_build_query($data, 'id_', '|');
echo $query_string;
?>

Le résultat de sortie est :

id_user=admin|id_email=admin%40example.com|id_age=18
  1. fonction urlencode()

urlencode() La fonction peut encoder les chaînes de paramètres d'URL et échapper aux caractères spéciaux. Exemple de code :

<?php
$data = array(
   &#39;user&#39; => 'admin',
   'email' => 'admin@example.com',
   'age' => 18
);
$query_string = http_build_query($data);
$query_string = urlencode($query_string);
echo $query_string;
?>

Le résultat de sortie est :

user%3Dadmin%26email%3Dadmin%2540example.com%26age%3D18

2. Convertissez la chaîne de paramètre d'URL en un tableau

  1. Fonction parse_str()

La fonction parse_str() peut analyser la chaîne de paramètre d'URL en un tableau associatif. Exemple de code :

Le résultat de sortie est :

Array
(
    [user] => admin
    [email] => admin@example.com
    [age] => 18
)
  1. Utilisez la fonction éclater() pour analyser manuellement

Si vous n'utilisez pas la fonction http_build_query() pour générer la chaîne de paramètres d'URL, vous pouvez également utiliser l'explosion () pour l'analyser manuellement. Exemple de code :

Le résultat de sortie est :

Array
(
    [user] => admin
    [email] => admin@example.com
    [age] => 18
)

3. Résumé

Ce qui précède est la méthode de conversion d'un tableau PHP en chaîne de paramètres d'URL et de conversion d'une chaîne de paramètres d'URL en tableau. Dans le développement réel, nous pouvons utiliser ces méthodes de manière flexible pour réaliser le transfert de données et le transfert de paramètres dans les requêtes d'interface API.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn