Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
| slam4:php:phalcon:routes [2015/01/12 03:00] – [1.3- Nommage des paramètres] jcheron | slam4:php:phalcon:routes [2019/08/31 14:21] (Version actuelle) – modification externe 127.0.0.1 | ||
|---|---|---|---|
| Ligne 120: | Ligne 120: | ||
| * params : last et desc | * params : last et desc | ||
| - | Récupération des paramètres dans l' | + | |
| + | Version courte avec paramètres nommés : | ||
| + | |||
| + | <sxh php> | ||
| + | <?php | ||
| + | |||
| + | $router-> | ||
| + | "/ | ||
| + | array( | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | ) | ||
| + | ); | ||
| + | </ | ||
| + | |||
| + | ==== -- Récupération des paramètres | ||
| <sxh php; | <sxh php; | ||
| Ligne 145: | Ligne 162: | ||
| } | } | ||
| + | </ | ||
| + | |||
| + | ==== -- Restrictions sur la méthode HTTP ==== | ||
| + | |||
| + | La correspondance des routes peut également être réalisée sur la méthode HTTP (GET, POST, HEAD, PUT, DELETE...) : | ||
| + | <sxh php> | ||
| + | <?php | ||
| + | |||
| + | // This route only will be matched if the HTTP method is GET | ||
| + | $router-> | ||
| + | |||
| + | // This route only will be matched if the HTTP method is POST | ||
| + | $router-> | ||
| + | |||
| + | // This route will be matched if the HTTP method is POST or PUT | ||
| + | $router-> | ||
| + | </ | ||
| + | |||
| + | ==== -- Fonctions de vérification ==== | ||
| + | |||
| + | Les routes doivent parfois satisfaire des conditions bien spécifiques qu'il est possible d' | ||
| + | |||
| + | <sxh php> | ||
| + | <?php | ||
| + | |||
| + | $router-> | ||
| + | ' | ||
| + | ' | ||
| + | ))-> | ||
| + | //Vérifie si la requête est réalisée en Ajax | ||
| + | if ($_SERVER[' | ||
| + | return false; | ||
| + | } | ||
| + | return true; | ||
| + | }); | ||
| + | </ | ||
| + | ==== -- Groupes de routes ==== | ||
| + | Si un ensemble de routes a des chemins identiques, il est possible de les regrouper pour les gérer plus facilement : | ||
| + | <sxh php> | ||
| + | <?php | ||
| + | |||
| + | $router = new \Phalcon\Mvc\Router(); | ||
| + | |||
| + | //Create a group with a common module and controller | ||
| + | $blog = new \Phalcon\Mvc\Router\Group(array( | ||
| + | ' | ||
| + | ' | ||
| + | )); | ||
| + | |||
| + | //All the routes start with /blog | ||
| + | $blog-> | ||
| + | |||
| + | //Add a route to the group | ||
| + | $blog-> | ||
| + | ' | ||
| + | )); | ||
| + | |||
| + | //Add another route to the group | ||
| + | $blog-> | ||
| + | ' | ||
| + | )); | ||
| + | |||
| + | //This route maps to a controller different than the default | ||
| + | $blog-> | ||
| + | ' | ||
| + | ' | ||
| + | )); | ||
| + | |||
| + | //Add the group to the router | ||
| + | $router-> | ||
| + | </ | ||
| + | |||
| + | ===== -- Configuration du routage ===== | ||
| + | ==== -- Fonctionnement par défaut ==== | ||
| + | La classe [[http:// | ||
| + | |||
| + | Il est possible de désactiver ce fonctionnement par défaut : | ||
| + | |||
| + | <sxh php; | ||
| + | <?php | ||
| + | |||
| + | // Instanciation du routeur sans les routes par défaut | ||
| + | $router = new \Phalcon\Mvc\Router(false); | ||
| + | </ | ||
| + | |||
| + | === -- Route par défaut === | ||
| + | <sxh php> | ||
| + | <?php | ||
| + | |||
| + | $router-> | ||
| + | ' | ||
| + | ' | ||
| + | )); | ||
| + | </ | ||
| + | |||
| + | === -- Chemins par défaut === | ||
| + | <sxh php> | ||
| + | <?php | ||
| + | |||
| + | // | ||
| + | $router-> | ||
| + | $router-> | ||
| + | $router-> | ||
| + | $router-> | ||
| + | |||
| + | // | ||
| + | $router-> | ||
| + | ' | ||
| + | ' | ||
| + | )); | ||
| + | </ | ||
| + | |||
| + | === -- Erreur 404 : not found path === | ||
| + | |||
| + | <sxh php> | ||
| + | <?php | ||
| + | |||
| + | //Set 404 paths | ||
| + | $router-> | ||
| + | " | ||
| + | " | ||
| + | )); | ||
| </ | </ | ||
| ===== -- Initialisation du service routage ===== | ===== -- Initialisation du service routage ===== | ||