Maison > développement back-end > tutoriel php > Comment puis-je réécrire des URL avec les paramètres GET à l'aide de .htaccess ?

Comment puis-je réécrire des URL avec les paramètres GET à l'aide de .htaccess ?

DDD
Libérer: 2024-11-16 13:35:02
original
909 Les gens l'ont consulté

How Can I Rewrite URLs with GET Parameters Using .htaccess?

Réécriture des variables GET avec .htaccess

De nombreuses applications Web utilisent une structure d'URL qui inclut du contenu dynamique, comme l'exemple fourni : index. php?page=contrôleur. Pour améliorer l'expérience utilisateur et maintenir une structure d'URL plus claire, il est souhaitable de réécrire ces URL pour qu'elles apparaissent dans un format plus convivial. Ceci peut être réalisé en utilisant les règles .htaccess.

Les règles .htaccess fournies réécrivent efficacement les URL de la forme http://localhost/index.php?page=controller en http://localhost/controller/. Cependant, l'exigence est de prendre également en charge les paramètres GET, ce qui entraîne des URL telles que http://localhost/controller/param/value/param/value.

Pour ce faire, la RewriteRule suivante peut être ajoutée au Fichier .htaccess :

RewriteRule ^(.*)$ index.php?params= [NC, QSA]
Copier après la connexion

Cette règle capture l'intégralité de l'URL, y compris tous les paramètres, et attribue les données capturées à la variable params GET. Par conséquent, l'URL http://localhost/controller/param/value/param/value serait réécrite en index.php?params=param/value/param/value.

Dans le script PHP, les paramètres La variable GET peut être éclatée pour extraire des paramètres individuels et leurs valeurs. Par exemple :

<?php

$params = explode("/", $_GET['params']);
for($i = 0; $i < count($params); $i+=2) {

  echo $params[$i] ." has value: ". $params[$i+1] ."<br />";

}

?>
Copier après la connexion

Avec cette modification, les règles .htaccess réécriront avec succès les URL avec les paramètres GET, permettant au script PHP d'accéder à ces paramètres pour un traitement ultérieur et la logique du contrôleur.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal