Comment obtenir des paramètres à partir d'une chaîne d'URL en PHP

Minahil Noor 30 janvier 2023
  1. Utilisez les fonctions parse_url() et parse_str() pour récupérer les paramètres d’une chaîne d’URL en PHP
  2. Utiliser la variable $_GET pour récupérer les paramètres d’une chaîne d’URL en PHP
Comment obtenir des paramètres à partir d'une chaîne d'URL en PHP

Cet article présente des méthodes pour obtenir des paramètres à partir d’une chaîne d’URL en PHP.

  • Utilisation de la fonction parse_url()
  • Utilisation de la fonction parse_str()
  • Utilisation de la variable $_GET

Utilisez les fonctions parse_url() et parse_str() pour récupérer les paramètres d’une chaîne d’URL en PHP

Nous pouvons utiliser les fonctions intégrées parse_url() et parse_str() pour obtenir les paramètres d’une URL string. Ces fonctions sont utilisées ensemble pour obtenir les paramètres. La fonction parse_url divisera l’URL en différents paramètres. Ensuite, la fonction parse_string récupère le paramètre requis.

La syntaxe correcte pour utiliser les fonctions parse_url() est la suivante

parse_url( $url, $component);

La fonction intégrée parse_url a deux paramètres. Les détails de ses paramètres sont les suivants

Paramètres Description
$url obligatoire Il s’agit de l’URL dont nous voulons obtenir le paramètre.
$component facultatif Il est utilisé pour obtenir un composant URL spécifique.

Cette fonction retourne les composants d’une URL. Si notre URL n’est pas correctement formatée, la fonction peut renvoyer False.

La syntaxe correcte pour utiliser la fonction parse_str() est la suivante

parse_str( $string, $result);

La fonction intégrée parse_str a deux paramètres. Les détails de ses paramètres sont les suivants.

Paramètres Description
$string obligatoire C’est la chaîne d’entrée qui est convertie en variables.
$result obligatoire Si ce paramètre est passé, les variables y sont stockées.

Cette fonction ne retourne rien.

Le programme ci-dessous montre comment nous pouvons utiliser ces fonctions pour obtenir des paramètres à partir d’une chaîne d’URL.

<?php 
$url = "https://testurl.com/test/1234?email=abc@test.com&name=sarah";
$components = parse_url($url);
parse_str($components['query'], $results);
print_r($results); 
?> 

Production:

Array
(
    [email] => abc@test.com
    [name] => sarah
)

Maintenant, si nous voulons obtenir uniquement le paramètre de l’e-mail, nous allons faire les changements suivants dans notre programme:

<?php 
$url = "https://testurl.com/test/1234?email=abc@test.com&name=sarah";
$components = parse_url($url);
parse_str($components['query'], $results);
echo($results['email']); 
?> 

Production:

abc@test.com

Nous pouvons aussi passer le paramètre $component à la fonction parse_url().

<?php 
$url = "https://testurl.com/test/1234?email=abc@test.com&name=sarah";
$components = parse_url($url, PHP_URL_QUERY);
//$component parameter is PHP_URL_QUERY
parse_str($components, $results);
print_r($results); 
?> 

Production:

Array
(
    [email] => abc@test.com
    [name] => sarah
)

Utiliser la variable $_GET pour récupérer les paramètres d’une chaîne d’URL en PHP

En PHP, nous pouvons également utiliser la variable $_GET pour obtenir des paramètres à partir d’une chaîne d’URL. Il s’agit d’une variable superglobal, ce qui signifie qu’elle est disponible dans tous les domaines. Cette variable récupère les données, c’est-à-dire l’URL, à partir d’un formulaire HTML.

En supposant que l’URL du formulaire est _COPY10@test.com&name=sarah . Le programme qui utilise cette variable pour obtenir les paramètres d’une chaîne d’URL est le suivant.

<?php 
echo $_GET['email'] . $_GET['name']
?> 

Production:

abc@test.com
sarah

Article connexe - PHP String