Ottieni parametri da una stringa URL in PHP

Minahil Noor 12 aprile 2021
  1. Usa le funzioni parse_url() e parse_str() per ottenere parametri da una stringa URL in PHP
  2. Usa la variabile $_GET per ottenere parametri da una stringa URL in PHP
Ottieni parametri da una stringa URL in PHP

Questo articolo introdurrà metodi per ottenere parametri da una stringa URL in PHP.

  • Utilizzo della funzione parse_url()
  • Utilizzo della funzione parse_str()
  • Utilizzando la variabile $_GET

Usa le funzioni parse_url() e parse_str() per ottenere parametri da una stringa URL in PHP

Possiamo usare le funzioni incorporate parse_url() e parse_str() per ottenere parametri da una stringa URL. Queste funzioni vengono utilizzate insieme per ottenere i parametri. La funzione parse_url dividerà l’URL in diversi parametri. Dopo di che parse_string otterrà il parametro richiesto.

La sintassi corretta per usare le funzioni parse_url() è la seguente

parse_url( $url, $component);

La funzione incorporata parse_url ha due parametri. I dettagli dei suoi parametri sono i seguenti

Parametri Descrizione
$url obbligatorio È l’URL da cui vogliamo ottenere il parametro.
$component opzionale Viene utilizzato per ottenere un componente URL specifico.

Questa funzione restituisce i componenti di un URL. Se il nostro URL non è formattato correttamente, la funzione potrebbe restituire False.

La sintassi corretta per usare la funzione parse_str() è la seguente

parse_str( $string, $result);

La funzione incorporata parse_str ha due parametri. I dettagli dei suoi parametri sono i seguenti.

Parametri Descrizione
$string obbligatorio È la stringa di input che viene convertita nelle variabili.
$result obbligatorio Se questo parametro viene passato, le variabili vengono memorizzate in esso.

Questa funzione non restituisce nulla.

Il programma seguente mostra come possiamo usare queste funzioni per ottenere parametri da una stringa 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); 
?> 

Produzione:

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

Ora, se vogliamo ottenere solo il parametro email, apporteremo le seguenti modifiche nel nostro programma:

<?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']); 
?> 

Produzione:

abc@test.com

Possiamo anche passare il parametro $component alla funzione 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); 
?> 

Produzione:

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

Usa la variabile $_GET per ottenere parametri da una stringa URL in PHP

In PHP, possiamo anche usare la variabile $_GET per ottenere parametri da una stringa URL. È una variabile superglobals, il che significa che è disponibile in tutti gli ambiti. Questa variabile ottiene i dati, ad esempio l’URL, da un modulo HTML.

Supponendo che l’URL dal modulo sia https://testurl.com/test/1234?email=abc@test.com&name=sarah. Il programma che utilizza questa variabile per ottenere parametri da una stringa URL è il seguente.

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

Produzione:

abc@test.com
sarah

Articolo correlato - PHP String