Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich Abfragezeichenfolgen aus URLs in PHP entfernen, um saubere URLs zu erhalten?

Wie kann ich Abfragezeichenfolgen aus URLs in PHP entfernen, um saubere URLs zu erhalten?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-02 20:47:11847Durchsuche

How Can I Remove Query Strings from URLs in PHP to Get Clean URLs?

Abfragezeichenfolge für saubere URLs entfernen

In PHP enthalten URLs häufig Abfragezeichenfolgen, die zusätzliche Informationen enthalten. Manchmal müssen Sie jedoch möglicherweise nur die saubere URL ohne die Abfragezeichenfolge abrufen.

PHP-Implementierung

Um dies zu erreichen, können Sie die Funktion strtok() verwenden:

$url = strtok($_SERVER["REQUEST_URI"], '?');

strtok() erfasst effizient die Zeichenfolge vor dem ersten Auftreten des ?.

Zusätzlich Techniken

Während strtok() der empfohlene Ansatz ist, gibt es alternative Techniken:

  • strstr(): Erfasst die Zeichenfolge vor dem ? wenn es mit true als zweitem Argument verwendet wird. Es ist jedoch weniger zuverlässig.
  • explode(): Teilt die URL am ? in ein Array auf. Greifen Sie auf das erste Element für die saubere URL zu.
  • substr(): In Kombination mit strrpos() weist diese Methode auch Zuverlässigkeitsprobleme auf.

Demonstration

Um die verschiedenen Techniken zu veranschaulichen, beachten Sie Folgendes URLs:

  • www.example.com/myurl.html?unwantedthngs
  • www.example.com/myurl.html

Die Ausgabe von Die verschiedenen Methoden sind wie folgt:

Method Output
strtok() www.example.com/myurl.html
strstr(/true) www.example.com/myurl.html
explode(/2) www.example.com/myurl.html
substr/strrpos() www.example.com/myurl.html

Wie Sie sehen können, stellt strtok() konsistent die bereit korrektes Ergebnis, während die anderen Techniken in bestimmten Fällen fehlschlagen können, insbesondere wenn der Abfragestring fehlt.

Das obige ist der detaillierte Inhalt vonWie kann ich Abfragezeichenfolgen aus URLs in PHP entfernen, um saubere URLs zu erhalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn