Maison  >  Article  >  développement back-end  >  Comment convertir un tableau PHP en chaîne URI

Comment convertir un tableau PHP en chaîne URI

PHPz
PHPzoriginal
2023-04-20 15:02:38551parcourir

Dans le développement Web, nous avons souvent besoin de convertir des tableaux PHP en URI. URI (Uniform Resource Identifier) ​​​​ou URL (Uniform Resource Locator) est un identifiant de chaîne utilisé pour indiquer une ressource spécifique. Dans de nombreux cas, nous devons convertir les tableaux PHP au format URI pour les transmettre aux API ou pour les utiliser dans des pages Web.

Dans cet article, nous expliquerons comment convertir des tableaux PHP en chaînes URI pour réaliser des fonctions telles que la transmission de données, les requêtes de recherche, etc.

  1. Utiliser http_build_query

Utiliser la fonction http_build_query est le moyen le plus simple de convertir un tableau PHP au format URI. Cette fonction convertit un tableau PHP en chaîne codée URI et renvoie cette chaîne :

<?php
$array = array(&#39;name&#39; => 'John Smith', 'age' => 34);
$queryString = http_build_query($array);

echo $queryString;

Sortie :

name=John+Smith&age=34

Dans l'exemple ci-dessus, nous convertissons un tableau associatif PHP contenant des informations de nom et d'âge au format URI. En utilisant la fonction http_build_query, nous pouvons garantir que le résultat est une chaîne codée URI correcte.

  1. Implémentez l'URLEncode vous-même

Si vous ne souhaitez pas utiliser la fonction intégrée http_build_query, vous pouvez convertir manuellement le tableau au format URI. Dans ce cas, nous pouvons utiliser la fonction urlencode intégrée de PHP pour encoder la chaîne dans l'URI :

<?php
$array = array(&#39;name&#39; => 'John Smith', 'age' => 34);
$queryString = '';

foreach($array as $key => $value){
    $queryString .= urlencode($key) . '=' . urlencode($value) . '&';
}

// 去掉结尾的 &
$queryString = rtrim($queryString, '&');

echo $queryString;

Sortie :

name=John+Smith&age=34

Dans l'exemple ci-dessus, nous utilisons foreach pour parcourir les clés et les valeurs du tableau, puis utilisez La fonction urlencode les code. Nous avons ajouté un signe égal et une esperluette entre chaque clé et valeur, et utilisé la fonction rtrim pour supprimer l'esperluette à la fin de la chaîne.

  1. Utilisation du formatage PHP_QUERY_RFC3986

Dans certains cas, nous devons utiliser l'encodage URI de fax, qui est le format RFC 3986. Si nous voulons utiliser ce format, nous devons définir le deuxième paramètre sur PHP_QUERY_RFC3986 lors de l'appel de la fonction http_build_query :

<?php
$array = array(&#39;name&#39; => 'John Smith', 'age' => 34);
$queryString = http_build_query($array, '', '&', PHP_QUERY_RFC3986);

echo $queryString;

Sortie :

name=John%20Smith&age=34

Dans l'exemple ci-dessus, nous utilisons la fonction http_build_query pour convertir le tableau en codage URI RFC 3986. chaîne de formatage. Nous pouvons voir que l'espace est codé en %20 et que le signe plus n'est pas utilisé. Il s'agit de la méthode spécifiée dans la RFC 3986.

Résumé

Dans cet article, nous avons présenté trois façons de convertir des tableaux PHP en URI. L'utilisation de la fonction http_build_query est l'approche la plus simple et la plus courante, tandis que l'implémentation manuelle de la fonction et l'utilisation du format RFC 3986 offrent plus de flexibilité et de contrôle. Quoi qu'il en soit, nous pouvons utiliser ces techniques pour générer des chaînes URI correctement formatées afin d'atteindre nos objectifs commerciaux.

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