PHP Conference Ehime 2026

Yaf_Route_Map::__construct

(Yaf >=1.0.0)

Yaf_Route_Map::__constructEl propósito de __construct

Descripción

public function Yaf_Route_Map::__construct(string $controller_prefer = false, string $delimiter = "")

Construye una ruta map. Una ruta map asocia el URI completo a un nombre de controlador o a un nombre de acción.

Parámetros

controller_prefer

Si el resultado debería considerarse un controlador o una acción

delimiter

El delimitador usado para separar en el URI el nombre asociado de los argumentos de la petición. Si aparece como un segmento de ruta precedido de una barra, todo lo que va después se analiza como argumentos de la petición en lugar de formar parte del nombre asociado. Si está vacío, durante el enrutamiento no se produce esa división.

Valores devueltos

No se devuelve ningún valor.

Ejemplos

Ejemplo #1 Ejemplo de Yaf_Route_Map

<?php
/**
 * Añade una ruta map a la pila de rutas de Yaf_Router
 */
Yaf_Dispatcher::getInstance()->getRouter()->addRoute("name",
    new Yaf_Route_Map());
?>

Resultado del ejemplo anterior es similar a:

/* para http://yourdomain.com/product/foo/bar
 * la petición llevará los siguientes valores:
 */
array(
  "action" => "product_foo_bar",
)

Ejemplo #2 Ejemplo de Yaf_Route_Map

<?php
/**
 * Añade a la pila de rutas de Yaf_Router una ruta map con delimitador
 */
Yaf_Dispatcher::getInstance()->getRouter()->addRoute("name",
    new Yaf_Route_Map(true, "_"));
?>

Resultado del ejemplo anterior es similar a:

/* para http://yourdomain.com/user/list/_/foo/22
 * la petición llevará los siguientes valores:
 */
array(
    "controller" => "User_List",
)

/**
 * y los parámetros de petición:
 */
array(
  "foo" => "22",
)

Ejemplo #3 Ejemplo de Yaf_Route_Map

<?php
/**
 * Añade una ruta map a la pila de rutas llamando a addConfig
 */
$config = array(
    "name" => array(
       "type"             => "map", // ruta Yaf_Route_Map
       "controllerPrefer" => FALSE,
       "delimiter"        => "#!",
    ),
);
Yaf_Dispatcher::getInstance()->getRouter()->addConfig(
    new Yaf_Config_Simple($config));
?>

Véase también

add a note

User Contributed Notes

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