Function.parse-url
Aus PHP-Wiki
parse_url — Analysiert einen URL und gibt seine Bestandteile zurück
Inhaltsverzeichnis |
Beschreibung
mixed parse_url ( string $url [, int $component ] )
Diese Funktion parst einen URL und gibt ein assoziatives Array zurück, das
die im URL vorhandenen Komponenten enthält.
Diese Funktion ist nicht dazu gedacht,
einen gegebenen URL zu validieren, sondern es gliedert einen URL in die
unten aufgeführten Bestandteile. Unvollständige URLs werden als Parameter
akzeptiert, parse_url() versucht, sie bestmöglich zu
analysieren.
Parameter-Liste
- url
- Der zu parsende URL. Ungültige Zeichen werden durch _ ersetzt.
- component
- Geben Sie einen der folgenden Parameter an, um nur einen spezifischen Teil des URL als String zu erhalten: PHP_URL_SCHEME, PHP_URL_HOST, PHP_URL_PORT, PHP_URL_USER, PHP_URL_PASS, PHP_URL_PATH, PHP_URL_QUERY oder PHP_URL_FRAGMENT.
Rückgabewerte
Bei sehr fehlerhaften URLs kann parse_url() FALSE zurückgeben und wirft E_WARNING. Andernfalls wird ein assoziatives Array zurückgegeben, dessen Bestandteile sich wie folgt zusammensetzen können (mindestens ein Bestandteil liegt vor): scheme - z.B. http host port user pass path query - alles nach dem Fragezeichen ? fragment - alles nach dem Textanker # Ist der Parameter component angegeben, wird ein String anstelle des normalen Array zurückgegeben.
ChangeLog
Version
Beschreibung
5.1.2
component
-Parameter hinzugefügt
Beispiele
#1 Ein parse_url()
<?php $url = 'http://benutzername:passwort@hostname/pfad?argument=wert#textanker'; print_r(parse_url($url)); echo parse_url($url, PHP_URL_PATH); ?>
Das oben gezeigte Beispiel erzeugt folgende
Ausgabe:Array ( [scheme] => http [host] => hostname [user] => benutzername [pass] => passwort [path] => /pfad [query] => argument=wert [fragment] => textanker ) /pfad
Anmerkungen
Hinweis:
Diese Funktion verarbeitet keine relativen URLs.
Hinweis:
Die Funktion ist primär dazu gedacht, URLs zu parsen, nicht jedoch URIs. Um
jedoch die Abwärtskompatibilität von PHP zu gewährleisten, wird für das
Schema file:// die Ausnahme dreier Slashes (file:///) zugelassen. Bei allen
anderen Schemata ist diese Notierung ungültig.