2016-06-14 32 views
0

Ich habe eine URL, die wie page.php? Zeug sieht = Zeug & Zeug = Zeug & order = sometext & page = AnzahlRegulärer Ausdruck einen Parameter aus URL entfernen

und ich möchte die „entfernen, um = Irgendein Text "Teil. Ich verwende diesen PHP-Code:

 $link = $_SERVER['REQUEST_URI']; 
     $re = "/&order=/"; 
     $link = preg_replace($re, "", $link); 

Und ich bin für das richtige Muster suchen, $ wieder sein sollte, die „order = sometext“ aus der URL zu löschen. Der "& page = number" Teil muss beibehalten werden, wenn er vorhanden ist, ist aber nicht immer vorhanden. Irgendwelche Ideen?

Vielen Dank im Voraus!

+0

Ja danke, ich habe mich gerade vertippt, wenn ich meine Frage posten. – Kishlin

Antwort

0

sollte die regex

(&|\?)order=[^&]+ 

(&|\?) sein: Die Reihenfolge in der Liste zuerst sein könnte, so dass wir das Entfernen entweder & oder?.

+0

Oh. Was ändert sich (& | \?)? – Kishlin

+0

@Kish geklärt. – nicael

+0

In meiner Situation wird es nie zuerst, aber trotzdem danke für die Klarstellung. – Kishlin

0

Eigentlich habe ich es mit /&order=[^&]*/ arbeiten lassen. :)