Rechercher une fonction PHP

Yaf_Route_Regex::__construct

(Yaf >=1.0.0)

Yaf_Route_Regex::__constructContructeur Yaf_Route_Regex

Description

public Yaf_Route_Regex::__construct ( string $match , array $route [, array $map [, array $verify [, string $reverse ]]] )

Retour à la première page de Manuel PHP  Table des matières Haut

Liste de paramètres

match

Un masque de Regex complet à utiliser pour y faire correspondre une requête URI ; si aucune correspondance n'est trouvée, Yaf_Route_Regex retournera FALSE.

route

Lorsque le masque trouve une correspondance dans la requête URI, Yaf_Route_Regex utilisera ce paramètre pour décider quel m/c/a doit être routé.

Les éléments du tableau m/c/a sont optionnels ; si vous n'assignez pas de valeurs spécifiques à ces éléments, ils seront routés vers la route par défaut.

map

Un tableau permettant d'assigner les noms aux éléments trouvés via le masque.

verify

reverse

une chaîne de caractères, utilisé pour assembler l'url. Voir la méthode Yaf_Route_Regex::assemble().

Note:

Ce paramètre a été introduite en version 2.3.0

Retour à la première page de Manuel PHP  Table des matières Haut

Exemples

Exemple #1 Exemple avec Yaf_Route_Regex()

<?php
   
/**
    * Ajoute une route Regex à la pile de routes Yaf_Router
    */
    
Yaf_Dispatcher::getInstance()->getRouter()->addRoute("name",
        new 
Yaf_Route_Regex(
           
"#^/product/([^/]+)/([^/])+#"//correspond à la requête URI "/product"
           
array(
               
'controller' => "product",  //route vers le controlleur produit,
           
),
           array(
              
=> "name",   // maintenant, vous pouvez appeler $request->getParam("name")
              
=> "id",     // pour récupérer la première capture du masque.
           
)
        )
    );
?>

Exemple #2 Exemple avec Yaf_Route_Regex (depuis la version 2.3.0)()

<?php
   
/**
    * Utilise le résultat des correspondances comme nom MVC
    */
    
Yaf_Dispatcher::getInstance()->getRouter()->addRoute("name",
        new 
Yaf_Route_Regex(
           
"#^/product/([^/]+)/([^/])+#i"//trouve l'URI demandée après "/product"
           
array(
              
'controller' => ":name"// route vers :name, qui correspond à $1 dans le résultat de la correspondance
                                       // comme nom du contrôleur
           
),
           array(
              
=> "name",   // maintenant, vous pouvez appeler $request->getParam("name")
              
=> "id",     // pour récupérer la première capture du masque de correspondance
           
)
        )
    );
?>

Exemple #3 Exemple avec Yaf_Route_Regex() et la capture du nom (depuis 2.3.0)

<?php
   
/**
    * Use match result as MVC name
    */
    
Yaf_Dispatcher::getInstance()->getRouter()->addRoute("name",
        new 
Yaf_Route_Regex(
           
"#^/product/(?<name>[^/]+)/([^/])+#i"//trouve le dernier "/product" de l'URI demandé
           
array(
           
'controller' => ":name"// route vers :name,
                                    // qui est le groupe de capture 'name' dans le résultat des correspondances comme nom du contrôleur
           
),
           array(
              
=> "id",     // pour récupérer la première capture dans le masque de recherche.
           
)
        )
    );
?>

Exemple #4 Exemple avec Yaf_Route_Regex()

<?php
   
/**
    * Ajoute une route Regex à la pile de routes Yaf_Router en appelant addconfig
    */
    
$config = array(
        
"name" => array(
           
"type"  => "regex",          //la route Yaf_Route_Regex
           
"match" => "#(.*)#",         //correspondance arbitraire à la requête URI
           
"route" => array(
               
'controller' => "product",  //route vers le controlleur produit,
               
'action'     => "dummy",    //route pour l'action dummy
           
),
           
"map" => array(
              
=> "uri",   // maintenant, vous pouvez appeler $request->getParam("uri")
           
),
        ),
    );
    
Yaf_Dispatcher::getInstance()->getRouter()->addConfig(
        new 
Yaf_Config_Simple($config));
?>

Retour à la première page de Manuel PHP  Table des matières Haut

Voir aussi

Rechercher une fonction PHP

Version en cache

23/12/2024 00:28:43 Cette version de la page est en cache (à la date du 23/12/2024 00:28:43) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.

Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-yaf-route-regex.construct.html

L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.

Références

  1. Consulter le document html Langue du document :fr Manuel PHP : http://php.net

Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.

Table des matières Haut