Forum und email
parse_url

parse_url

(PHP 3, PHP 4, PHP 5)

parse_url -- Przetwarza adres URL i zwraca jego składowe

Opis

mixed parse_url ( string url [, int składnik] )

Funkcja przetwarza URL i zwraca tablicę asocjacyjną zawierającą każdy z komponentów wchodzących w skład URL.

Ta funkcja nie służy do sprawdzania poprawności podanego URL, tylko rozbija go na podane niżej części. Częściowe URLe także są obsługiwane parse_url() postara się przetworzyć je poprawnie.

Parametry

url

Adres URL do przetworzenia

składnik

Podaj jedną ze stałych PHP_URL_SCHEME, PHP_URL_HOST, PHP_URL_PORT, PHP_URL_USER, PHP_URL_PASS, PHP_URL_PATH, PHP_URL_QUERY or PHP_URL_FRAGMENT aby otrzymać określony składnik URL jako string.

Zwracane wartości

W przypadku poważnie zdeformowanych URLi, parse_url() może zwrócić FALSE i wyemitować E_WARNING. W przeciwnym wypadku zostanie zwrócona asocjatywna tablica, której składowe mogą być następujące (wystąpi przynajmnej jedena):

  • scheme (protokół) - np. http

  • host

  • port

  • user (użytkownik)

  • pass (hasło)

  • path (ścieżka)

  • query (zapytanie) - po znaku ?

  • fragment - po znaku #

Jeśli parametr składnik jest określony, zwracany jest string zamiast array.

Rejestr zmian

WersjaOpis
5.1.2Dodano parametr składnik

Przykłady

Przykład 1. A parse_url() przykład

<?php
$url
= 'https://uzytkownik:haslo@serwer/sciezka?arg=wartosc#kotwica';

print_r(parse_url($url));
echo
parse_url($url, PHP_URL_PATH);
?>

Powyższy przykład wyświetli:

Array
(
    [scheme] => http
	[host] => serwerer
	[user] => uzytkownik
	[pass] => haslo
	[path] => /sciezka
	[query] => arg=wartosc
	[fragment] => kotwica
)
/sciezka

Notatki

Notatka: Funkcja nie działa na relatywnych URLach.

Notatka: parse_url() jest przeznaczona do przetwarzania URLi, a nie URI. Jednakże, aby zastosować wymóg wstecznej kompatybilności PHP, zrobiono wyjątek dla protokołu file:// gdzie potrójne ukośniki (file:///...) są dozwolone. Dla innych protokołów jest to nieprawidłowe.