Ich habe nun das ganze Konstrukt umgebaut und mithilfe von parse_url() und parse_str() die URL zerlegt und wieder zusammengesetzt.
Zawinski | PCRE
---------+-----
1 | 0
:)
P.S: Eine Frage vielleicht noch: In der Doku zu parse_url() steht, dass sie nicht mit relativen URL funktioniert. Meine sind aber relativ und der array-wert "host", "path" und "query" greifen dennoch die richtigen Inhalte ab.
Das kommt darauf an, was du unter relativ verstehst :)
Wenn du damit einen absolute URL eben ohne protokoll und host meinst, ist er nicht relativ. Im Zweifelsfall knall einfach ein http://example.com davor und ignorier das beim zusammenbauen wieder.