Dekodowanie adresu URL (urldecode)
Założenie: Nauczymy się, jak używać funkcji urldecode()
w PHP do dekodowania zakodowanych znaków w adresie URL i odczytywania parametrów z adresu URL.
Krok po kroku:
- Zakodowany adres URL: Załóżmy, że mamy zakodowany adres URL, np.:
https://www.przyklad.pl/strona?imie=Jan+Kowalski&wiek=30
. Zauważ, że spacja w imieniu i nazwisku została zakodowana jako znak “+”. - Dekodowanie adresu URL: Użyjemy funkcji
urldecode()
, aby zdekodować ten adres URL. Najpierw musimy pobrać poszczególne parametry z adresu URL. W tym przykładzie użyjemy funkcji `parse_url()` aby rozbić URL na części składowe, a następnie `parse_str()` aby rozbić część query string na zmienne.
$url = 'https://www.przyklad.pl/strona?imie=Jan+Kowalski&wiek=30';
$parsedUrl = parse_url($url);
parse_str($parsedUrl['query'], $queryParams);
$imie = urldecode($queryParams['imie']);
$wiek = urldecode($queryParams['wiek']);
echo "Imię: " . $imie . "
";
echo "Wiek: " . $wiek;
Funkcja parse_url()
rozdziela URL na jego składowe (schemat, host, ścieżka, query string itd.). parse_str()
przekształca query string na tablicę zmiennych. urldecode()
dekoduje zakodowane znaki URL, takie jak “+”, “%20” (spacja), itp. Wyświetlamy następnie zdekodowane wartości zmiennych `$imie` i `$wiek`.
Ten przykład pokazuje podstawowe zastosowanie funkcji urldecode()
. Pamiętaj, że zawsze należy dekodować dane pochodzące z adresu URL przed ich użyciem w aplikacji, aby uniknąć problemów z bezpieczeństwem.