PHP: URL parsen

Sind Sie als PHP-Programmierer gezwungen, URLs auszuwerten oder zu manipulieren, kommt schnell Frust auf. Denn wenn der eigene Code wirklich mit allen Varianten einer URL, inklusive Spezialitäten wie Portadresse, Parameter-Teil oder Ankeradressierung umgehen können soll, ist einiges an Programmierarbeit notwendig.

Mit parse_url() bietet PHP ein Funktion, die Ihnen den Großteil der Arbeit abnimmt. Ihr gibt man als Parameter einen String, der eine URL in einem beliebigen gültigen Format enthält. Die Funktion zerlegt die URL in ihre Bestandteile zerlegt und liefert das als Array mit fester Aufteilung zurück. Ein Beispiel:

$arr = parse_url(‘http://www.xy.de:8080/?x=1’)

Hier liefert beispielsweise $arr[‘host’] als Ergebnis ‘www.xy.de’ und $arr[‘query’] enthält die Parameterdefinition ‘x=1’. Einen guten Überblick über die möglichen Array-Felder liefert das PHP-Manual. Sie können sich aber auch einfach der Funktion var_dump() anzeigen lassen, wie das zurückgelieferte Array aussieht. Für obiges Beispiel erhalten Sie dann folgenden Output:

array(5) {

[“scheme”] => string(4) “http”

[“host”] => string(8) “ww.xy.de”

[“port”] => int(8080)

[“path”] => string(1) “/”

[“query”] => string(7) “x=1&y=2”

}

Ähnliche Beiträge