Maison >développement back-end >tutoriel php >Comment utiliser le routage Yii pour le routage d'URL en php ?

Comment utiliser le routage Yii pour le routage d'URL en php ?

WBOY
WBOYoriginal
2023-06-04 13:40:331130parcourir

Avec le développement des applications web, le routage d'URL est devenu un concept clé, permettant aux applications de disposer d'une structure d'URL plus conviviale et plus simple à utiliser. De nombreux frameworks Web populaires, tels que le framework Yii de PHP, offrent des fonctionnalités de routage pour vous aider à mieux organiser et gérer les URL de votre application.

Dans le framework Yii, le routage fait référence à l'opération de mappage de l'adresse URL d'une requête HTTP à une action ou une classe de contrôleur spécifique. Ici, nous verrons en détail comment utiliser le framework Yii pour implémenter le routage d'URL.

Règles de routage

Dans le framework Yii, les règles de routage font référence à l'opération de conversion de l'adresse URL demandée par le client en une classe de contrôleur ou une action. Le framework Yii gère toutes les règles de routage via une table de routage, composée d'un tableau, et chaque élément du tableau est une règle de routage.

Le framework Yii fournit une multitude de règles de routage, notamment les types suivants :

  • Règles de routage fixes : les règles de routage fixes spécifient une adresse URL spécifique, telle que "/site/index" qui sera mappée à l'index de la classe SiteController. () action.
  • Règles de routage dynamique : convertissez dynamiquement des parties du chemin de l'URL en paramètres d'action via des espaces réservés. Par exemple, "post/3493f3358a126a26f38915ea72d0923c" sera mappé à l'action view() dans la classe PostController.
  • Règle de routage des expressions régulières : une route qui utilise des expressions régulières pour correspondre aux URL, ce qui peut rendre les URL plus flexibles et configurables. Par exemple, "/6c899c21d634eccd10b797fe3680796f" correspondra à trois caractères. la valeur de l'identifiant.
  • Règles de routage RESTful : basées sur le routage d'URL de style RESTful, les adresses URL simples peuvent être converties en opérations complexes. Par exemple, "POST /post" sera mappé à l'action create() dans la classe PostController.

Créer des règles de routage

Dans Yii, vous pouvez convertir une adresse URL en une opération ou une action de contrôleur en écrivant des règles de routage. La méthode de création de règles de routage est relativement simple et nécessite de les ajouter à la table de routage. Voici un exemple qui achemine "/site/index" vers l'action index() de la classe SiteController :

[
    'site/index' => 'site/index',
]

Dans cet exemple, nous définissons une règle de routage fixe afin qu'une requête pour "/site/index" appelle l'action SiteController index() dans la classe.

Règles de routage dynamique

À l'aide de règles de routage dynamique, vous pouvez convertir des parties du chemin de l'URL en paramètres d'action. Par exemple, "post/3493f3358a126a26f38915ea72d0923c" mappera le paramètre ID dans l'URL à l'action view() dans la classe PostController. Vous pouvez spécifier un format de paramètre spécifique dans la table de routage pour filtrer les requêtes illégales.

Voici un exemple d'utilisation de règles de routage dynamique :

[
    'post/<id:d+>' => 'post/view',
]

Dans cet exemple, nous définissons une règle de routage dynamique, ce qui signifie que le paramètre "id" dans l'URL sera extrait et passé à view() dans la classe PostController en méthode. Dans cet exemple, "3493f3358a126a26f38915ea72d0923c" spécifie une expression régulière pour correspondre à un ou plusieurs nombres.

Règles de routage des expressions régulières

Dans le framework Yii, vous pouvez utiliser des expressions régulières pour faire correspondre les URL afin de correspondre plus précisément à des adresses URL spécifiques. Par exemple, vous pouvez utiliser la règle de routage "/425b3eb620b5a26c10f58336f0e9ea6a" pour acheminer toutes les demandes d'ID d'une longueur de 3 caractères vers une action de traitement spécifique.

Voici un exemple d'utilisation d'une règle de routage d'expression régulière :

[
    '/<id:w{3}>' => 'site/page',
]

Dans cet exemple, la règle de routage "/425b3eb620b5a26c10f58336f0e9ea6a" correspond à trois chaînes de n'importe quelle longueur de caractère de mot et sera acheminée vers la méthode page() de SiteController. Grâce aux règles de routage des expressions régulières, vous pouvez gérer et organiser la structure des URL de votre application de manière plus flexible et personnalisable.

Règles de routage RESTful

Dans le framework Yii, les règles de routage RESTful vous permettent d'utiliser une série de règles de routage rapide pour gérer des structures d'URL complexes et des demandes d'action. Avec les règles de routage RESTful, vous pouvez mapper des actions standard aux requêtes basées sur des URL et gérer efficacement vos applications.

Voici un exemple d'utilisation des règles de routage RESTful :

[
   'POST /post' => 'post/create',
   'GET /post/<id:d+>' => 'post/view',
   'PUT /post/<id:d+>' => 'post/update',
   'DELETE /post/<id:d+>' => 'post/delete',
];

Dans cet exemple, la règle de routage "POST /post" sera mappée à la méthode create() du PostController. "GET /post/3493f3358a126a26f38915ea72d0923c" correspondra à un paramètre ID, qui sera utilisé dans la méthode view() de PostController. De même, "PUT /post/3493f3358a126a26f38915ea72d0923c" sera acheminé vers la méthode update() dans la classe PostController, et "DELETE /post/3493f3358a126a26f38915ea72d0923c" dans la méthode de classe PostController ().

Conclusion

Dans le framework Yii, le routage fournit un mécanisme permettant de mapper les URL en actions spécifiques ou en classes de contrôleur et est donc l'un des éléments clés pour créer des applications hautes performances. Les règles de routage rendent les URL plus lisibles et maintenables, et permettent une meilleure gestion et organisation de votre application. Dans l'utilisation réelle du framework Yii, vous pouvez choisir différents types de règles de routage en fonction des besoins de votre application pour garantir l'intégrité et la fiabilité de votre application et de la structure de votre URL.

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!

Déclaration:
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