[ZF-10089] Zend_Log
[zend.git] / documentation / manual / fr / module_specs / Zend_Controller-Router-Route-Hostname.xml
blobfeb8a83d59fc96d7b5a333e7ac0b2bb2b8c0fb22
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> est la route par nom
9         d'hôte du framework. Elle fonctionne de la même manière que la route standard, mais elle
10         utilise le nom d'hôte de l'URL appelé au lieu du chemin.
11     </para>
13     <para>
14         Utilisons l'exemple d'une route standard et regardons ce que cela donnerais en
15         utilisant le nom d'hôte. Au lieu d'appeler l'utilisateur par le chemin, nous voulons être
16         capable d'appeler <code>http://toto.users.example.com</code> pour voir les informations
17         concernant l'utilisateur "toto"&#160;
18     </para>
20     <programlisting language="php"><![CDATA[
21 $hostnameRoute = new Zend_Controller_Router_Route_Hostname(
22     ':username.users.example.com',
23     array(
24         'controller' => 'profile',
25         'action'     => 'userinfo'
26     )
29 $plainPathRoute = new Zend_Controller_Router_Route_Static('');
31 $router->addRoute('user', $hostnameRoute->chain($plainPathRoute);
32 ]]></programlisting>
34     <para>
35         Le premier paramètre dans le constructeur
36         <classname>Zend_Controller_Router_Route_Hostname</classname> est la définition d'une route
37         qui correspondra à un nom d'hôte. Les définitions de route consistent en des parties
38         statiques et des parties dynamiques séparées par le caractère point ("<code>.</code>"). Les
39         parties dynamiques, appelées variables, sont marquées en précédant le nom de variable par
40         le caractère deux-points ("<code>:</code>")&#160;: <code>:username</code>. Les parties
41         statiques sont de simples textes&#160;: <code>user</code>.
42     </para>
44     <para>
45         Les routes par nom d'hôtes peuvent, mais ne devraient pas être utilisées comme ceci.
46         La raison à cela est que qu'une route par nom d'hôte seule ne correspondra à aucun chemin.
47         Donc vous devez donc chaîner le chemin d'une route à une route par nom d'hôte. Ceci est
48         réalisé comme dans l'exemple ci-dessous en appelant
49         <code>$hostnameRoute-&gt;chain($pathRoute);</code>. En faisant ceci,
50         <varname>$hostnameRoute</varname> n'est pas modifié, mais une nouvelle route
51         (<classname>Zend_Controller_Router_Route_Chain</classname>) est retournée, qui peut ainsi
52         être fournie au routeur.
53     </para>
54 </sect3>