Yaf_Route_Regex::__construct

(Yaf >=1.0.0)

Yaf_Route_Regex::__constructLe but __construct

Description

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

Avertissement

Cette fonction n'est pas documentée et seule la liste des arguments est disponible.

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

Valeurs de retour

Exemples

Exemple #1 Exemple avec Yaf_Route_Regex()

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

Exemple #2 Exemple avec Yaf_Route_Regex()

  1. <?php
  2. /**
  3. * Ajoute une route Regex à la pile de routes Yaf_Router en appelant addconfig
  4. */
  5. $config = array(
  6. "name" => array(
  7. "type" => "regex", //la route Yaf_Route_Regex
  8. "match" => "#(.*)#", //correspondance arbitraire à la requête URI
  9. "route" => array(
  10. 'controller' => "product", //route vers le controlleur produit,
  11. 'action' => "dummy", //route pour l'action dummy
  12. ),
  13. "map" => array(
  14. 1 => "uri", // maintenant, vous pouvez appeler $request->getParam("uri")
  15. ),
  16. ),
  17. );
  18. Yaf_Dispatcher::getInstance()->getRouter()->addConfig(
  19. new Yaf_Config_Simple($config));
  20. ?>

Voir aussi

LoadingChargement en cours