Aktueller Standort: Startseite> Neueste Artikel> Verwenden Sie Output_add_rewrite_var in PHP, um eine freundliche URL mit Rewrite_RULES zu generieren

Verwenden Sie Output_add_rewrite_var in PHP, um eine freundliche URL mit Rewrite_RULES zu generieren

gitbox 2025-06-05

In der PHP-Entwicklung ist das Generieren benutzerfreundlicher URLs (sogenannte SEO-URLs oder pseudo-statische URLs) eine häufigste Anforderung. Es verbessert nicht nur die Benutzererfahrung, sondern hilft auch bei der Einbeziehung von Suchmaschinen. Die meisten Entwickler entscheiden sich für die Umschreibung von Apache Mod_rewrite oder Nginx, um sie zu implementieren. PHP selbst bietet jedoch auch einige Hilfsmechanismen, wie z .

In diesem Artikel wird erläutert, wie Sie optimal_add_rewrite_var () mit den URL-Umschreiberregeln des Webservers verwenden, um die benutzerfreundliche URL-Ausgabe zu erzielen.

Was ist output_add_rewrite_var ()

output_add_rewrite_var () ist eine von PHP bereitgestellte Ausgabesteuerfunktion, mit der die angegebenen Abfrageparameter automatisch an alle URLs -Ausgaben über Echo , Drucken oder Vorlagen (einschließlich <a> Tags und Formulare) anhängen können. Diese Funktion wird häufig zur automatischen Ausbreitung von Sitzungs -IDs verwendet und kann auch für andere benutzerdefinierte Variablen verwendet werden.

 <?php
output_add_rewrite_var('page', 'home');
?>

Der obige Code wird automatisch angehängt ? Page = home oder & page = home zu allen Ausgabe -URLs und Formularen.

Urls in Verbindung mit Umschreiben von Regeln verschönern

Obwohl output_add_rewrite_var () nur Abfragesträge hinzufügen können, können wir die serverseitige Umschreibefunktion verwenden, um diese Abfragestruktur in ein eleganteres Pfadformat zu konvertieren. Zum Beispiel:

 https://gitbox.net/index.php?page=home

Konvertieren zu:

 https://gitbox.net/home

Dies wird durch die Umschreiben des Servers erreicht.

Apache -Beispiel

 RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z0-9_-]+)$ index.php?page=$1 [L,QSA]

Nginx Beispiel

 location / {
    try_files $uri $uri/ /index.php?page=$uri;
}

PHP -Verarbeitungslogik

Dann können Sie in index.php den entsprechenden Inhalt entsprechend dem Wert von $ _get ['Seite'] laden:

 <?php
$page = $_GET['page'] ?? 'home';

switch ($page) {
    case 'home':
        include 'pages/home.php';
        break;
    case 'about':
        include 'pages/about.php';
        break;
    default:
        include 'pages/404.php';
}
?>

Auf diese Weise wird der Besuch https://gitbox.net/about tatsächlich als index.php? Page = über umgeschrieben, und das PHP -Skript kann die entsprechende Seite erkennen und laden.

AUTOR LINK -Parameter mithilfe von option_add_rewrite_var () anhängen

Um die Abfrageparameter der URL (z. B. Paging -Parameter, Sprachparameter usw.) weiter zu automatisieren, können Sie verwenden:

 <?php
output_add_rewrite_var('lang', 'zh');
?>

Dadurch wird der Link auf der Seite automatisch geändert in:

 https://gitbox.net/about?lang=zh

In Verbindung mit den Umschreibregeln können Sie die Parameter weiter umschreiben, um sie herzustellen:

 https://gitbox.net/zh/about

Fügen Sie den Serverregeln einfach eine Ebene der Spracherkennung hinzu.

Zusammenfassung

Obwohl moderne Frameworks (wie Laravel und Symfony) modernere und strukturierte Routing-Lösungen anbieten, ist in einigen leichten oder benutzerdefinierten Entwicklungsprojekten PHP Native Output_ADD_REWRITE_VAR () immer noch ein möglicher Weg, um benutzerfreundliche URLs in einigen leichten oder maßgeschneiderten Entwicklungsprojekten zu generieren. Mit dieser Methode können Sie die URL -Struktur Ihres Projekts flexibler steuern, ohne sich vollständig auf externe Frameworks zu verlassen.

Darüber hinaus ist dieser Ansatz besonders für Legacy -Projekte nützlich und erfordert keine signifikante Änderung der Codestruktur, um eine bessere URL -Leistung zu erzielen.