update DOC-ES
[zend.git] / documentation / manual / es / module_specs / Zend_Controller-Router-Route-Hostname.xml
blob81011adf7cacb28e67d836ef363e2e1258b577ae
1 <?xml version="1.0" encoding="UTF-8"?>
2     <!-- EN-Revision: 17592 -->
3     <!-- Reviewed: no -->
4 <sect3 id="zend.controller.router.routes.hostname">
5     <title>Zend_Controller_Router_Route_Hostname</title>
7     <para>
8         <classname>Zend_Controller_Router_Route_Hostname</classname>
9         es la ruta
10         del framework en el servidor. Funciona similarmente a la standard route,
11         pero
12         funciona con el nombre del host de la
13         <acronym>URL</acronym>
14         llamada, en lugar del path.
15     </para>
17     <para>
18         Vamos a usar el ejemplo de la standard route y ver cómo se vería con
19         un nombre basado en
20         host. En lugar de llamar al usuario mediante un
21         path, quisiéramos que un usuario pueda llamar
22         a
23         <filename>http://martel.users.example.com</filename>
24         para ver la
25         información acerca del usuario "martel".
26     </para>
28     <programlisting language="php"><![CDATA[
29 $hostnameRoute = new Zend_Controller_Router_Route_Hostname(
30     ':username.users.example.com',
31     array(
32         'controller' => 'profile',
33         'action'     => 'userinfo'
34     )
37 $plainPathRoute = new Zend_Controller_Router_Route_Static('');
39 $router->addRoute('user', $hostnameRoute->chain($plainPathRoute);
40 ]]></programlisting>
42     <para>
43         El primer parámetro del constructor en
44         <classname>Zend_Controller_Router_Route_Hostname</classname>
45         es una
46         definición de ruta que será comparada con el nombre del host. Las
47         definiciones de ruta
48         consisten en partes estáticas y dinámicas separadas
49         por el carácter punto ('.'). Las partes
50         dinámicas, llamadas variables,
51         se marcan anteponiendo dos puntos (':') al nombre de la
52         variable:
53         <command>:username</command>
54         . Las partes estáticas son
55         simplemente texto:
56         <command>user</command>
57         .
58     </para>
60     <para>
61         Las rutas del nombre del host pueden, pero nunca deben ser utilizadas
62         así. La razón detrás de
63         esto es que la ruta del nombre del host
64         solamente, concordaría con cualquier path. Entonces,
65         lo que tiene que
66         hacer es encadenar una ruta del path a la ruta del nombre del host. Esto
67         se
68         hace como en el ejemplo llamando a
69         <command>$hostnameRoute->chain($pathRoute);</command>
70         .
71         Haciendo esto,
72         <varname>$hostnameRoute</varname>
73         no se modifica,
74         pero devuelve una nueva ruta
75         (
76         <classname>Zend_Controller_Router_Route_Chain</classname>
77         ), que
78         luego puede ser entregada al router.
79     </para>
80 </sect3>