PHP 5.6.0 released

Yaf_Router::addRoute

(Yaf >=1.0.0)

Yaf_Router::addRouteAjoute une nouvelle route dans un routeur

Description

public bool Yaf_Router::addRoute ( string $name , Yaf_Route_Abstract $route )

Par défaut, Yaf_Router utilise une instance de la classe Yaf_Route_Static comme route par défaut. Vous pouvez ajouter de nouvelles routes dans la pile des routes du routeur en appelant cette méthode.

La nouvelle route sera appelée avant l'ancien de la pile de routes, et si la nouvelle route retourne TRUE, le processus du routeur s'arrêtera. Sinon, la ou les anciennes anciennes routes de la pile seront appelées.

Liste de paramètres

Cette fonction ne contient aucun paramètre.

Valeurs de retour

Exemples

Exemple #1 Exemple avec Yaf_Dispatcher::autoRender()

<?php
class Bootstrap extends Yaf_Bootstrap_Abstract{
    public function 
_initConfig() {
        
$config Yaf_Application::app()->getConfig();
        
Yaf_Registry::set("config"$config);
    }

    public function 
_initRoute(Yaf_Dispatcher $dispatcher) {
        
$router $dispatcher->getRouter();
        
/**
         * Nous pouvons ajouter des routes définies dans le fichier de
         * configuration application.ini
         */
        
$router->addConfig(Yaf_Registry::get("config")->routes);
        
/**
         * Ajoute une route de réécriture, matchant la requête
         * http://***/
product/list/22/foo et dont le résultat sera :
         *
         *  [
module] => 
         *  [
controller] => product
         
*  [action] => info
         
*  [method] => GET
         
*  [params:protected] => Array
         *      (
         *          [
id] => 22
         
*          [name] => foo
         
*      )
         * 
         */
        
$route  = new Yaf_Route_Rewrite(
            
"/product/list/:id/:name",
            array(
                
"controller" => "product",
                
"action"     => "info",
            )
        ); 
        
        
$router->addRoute('dummy'$route);
    }
?>

Voir aussi

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top