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/13 02:10] – [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 136: | Ligne 136: | ||
| </ | </ | ||
| + | ==== -- Récupération des paramètres nommés dans l' | ||
| + | |||
| + | |||
| + | <sxh php; | ||
| + | <?php | ||
| + | |||
| + | class PostsController extends \Phalcon\Mvc\Controller{ | ||
| + | |||
| + | public function indexAction(){ | ||
| + | |||
| + | } | ||
| + | |||
| + | public function showAction(){ | ||
| + | |||
| + | // Return " | ||
| + | $year = $this-> | ||
| + | |||
| + | // Return " | ||
| + | $month = $this-> | ||
| + | |||
| + | // Return " | ||
| + | $day = $this-> | ||
| + | |||
| + | } | ||
| + | |||
| + | } | ||
| + | </ | ||
| + | |||
| + | ==== -- 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 ==== | ==== -- Groupes de routes ==== | ||
| Si un ensemble de routes a des chemins identiques, il est possible de les regrouper pour les gérer plus facilement : | Si un ensemble de routes a des chemins identiques, il est possible de les regrouper pour les gérer plus facilement : | ||
| Ligne 172: | Ligne 234: | ||
| </ | </ | ||
| - | ==== -- Récupération des paramètres nommés dans l' | + | ===== -- Configuration du routage |
| + | ==== -- Fonctionnement par défaut ==== | ||
| + | La classe [[http:// | ||
| + | Il est possible de désactiver ce fonctionnement par défaut : | ||
| - | <sxh php;title:PostController.php> | + | <sxh php;gutter:false> |
| <?php | <?php | ||
| - | class PostsController extends | + | // Instanciation du routeur sans les routes par défaut |
| + | $router = new \Phalcon\Mvc\Router(false); | ||
| + | </ | ||
| - | public function indexAction(){ | + | === -- Route par défaut === |
| + | <sxh php> | ||
| + | <?php | ||
| - | } | + | $router-> |
| + | ' | ||
| + | ' | ||
| + | )); | ||
| + | </ | ||
| - | public function showAction(){ | + | === -- Chemins par défaut === |
| + | <sxh php> | ||
| + | <?php | ||
| - | | + | //Définition à partir des méthodes spécifiques |
| - | $year = $this->dispatcher->getParam(" | + | $router-> |
| + | $router->setDefaultNamespace(' | ||
| + | $router-> | ||
| + | $router->setDefaultAction(' | ||
| - | | + | //Définition à partir d'un tableau |
| - | $month = $this->dispatcher-> | + | $router->setDefaults(array( |
| + | ' | ||
| + | ' | ||
| + | )); | ||
| + | </ | ||
| - | // Return " | + | === -- Erreur 404 : not found path === |
| - | $day = $this-> | + | |
| - | } | + | <sxh php> |
| + | <?php | ||
| - | } | + | //Set 404 paths |
| + | $router-> | ||
| + | " | ||
| + | " | ||
| + | )); | ||
| </ | </ | ||
| ===== -- Initialisation du service routage ===== | ===== -- Initialisation du service routage ===== | ||