| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137 |
- <?xml version="1.0" encoding="utf-8"?>
- <!-- EN-Revision: 24249 -->
- <!-- Reviewed: no -->
- <sect2 id="zend.validate.set.post_code">
- <title>PostCode</title>
- <para>
- <classname>Zend_Validate_PostCode</classname> vous permet de déterminer si une valeur
- donnée est un code postal valide. Les codes postaux siont spécifiques aux villes et dans
- quelques cas spéciaux sont nommés des codes <acronym>ZIP</acronym>.
- </para>
- <para>
- <classname>Zend_Validate_PostCode</classname> reconnait plus de 160 différents formats de
- codes postaux. Pour sélectionner le format correct, il existe deux manières. Vous pouvez
- soit utiliser une locale complète, soit paramétrer votre propre format manuellement.
- </para>
- <para>
- Utiliser la locale est la méthode la plus commode puisque Zend Framework connait les
- formats des codes postaux assoicés à chaque locale  cependant, vous devez utiliser
- une locale complète (c'est-à-dire contenant aussi le spécificateur de région) dans ce cas.
- Par exemple, la locale "fr" est une bien une locale mais ne peut pas être utilisée avec
- <classname>Zend_Validate_PostCode</classname> puisqu'elle ne contient pas la
- région ; "fr_FR" sera, cependant, une locale valide puisqu'elle spécifie une région
- ("FR", pour France).
- </para>
- <programlisting language="php"><![CDATA[
- $validator = new Zend_Validate_PostCode('fr_FR');
- ]]></programlisting>
- <para>
- Quand vous ne paramétrez pas de locale vous-même, alors
- <classname>Zend_Validate_PostCode</classname> utilisera la locale de l'application, ou, s'il
- n'y en a pas, la locale retournée par <classname>Zend_Locale</classname>.
- </para>
- <programlisting language="php"><![CDATA[
- // locale de l'application définie dans le bootstrap
- $locale = new Zend_Locale('fr_FR');
- Zend_Registry::set('Zend_Locale', $locale);
- $validator = new Zend_Validate_PostCode();
- ]]></programlisting>
- <para>
- Vous pouvez changer la locale plus tard en appelant <methodname>setLocale()</methodname>.
- Et bien sûr vous pouvez récupérer la locale courante avec
- <methodname>getLocale()</methodname>.
- </para>
- <programlisting language="php"><![CDATA[
- $validator = new Zend_Validate_PostCode('fr_FR');
- $validator->setLocale('en_GB');
- ]]></programlisting>
- <para>
- Les formats de codes postaux sont simplement des chaînes d'expressions régulières. Quand le
- format de code postal international, qui est utilisé en paramétrant la locale, ne correspond
- pas à vos besoins, alors vous pouvez alors paramétrer manuellement un format en appelant
- <methodname>setFormat()</methodname>.
- </para>
- <programlisting language="php"><![CDATA[
- $validator = new Zend_Validate_PostCode('fr_FR');
- $validator->setFormat('FR-\d{5}');
- ]]></programlisting>
- <note>
- <title>Conventions pour les formats personnalisés</title>
- <para>
- Lors de l'utilisation de formats personnalisés, vous devez omettre les balises de début
- (<command>'/^'</command>) et de fin (<command>'$/'</command>). Elles sont ajoutés
- automatiquement.
- </para>
- <para>
- Vous devez faire attention au fait que les valeurs de code postal sont toujours
- validées de manière stricte. Ce qui veut dire qu'ils doivent être écrits seuls sans
- caractère additionnel qui ne serait pas couvert par le format.
- </para>
- </note>
- <sect3 id="zend.validate.set.post_code.constructor">
- <title>Options du constructeur</title>
- <para>
- Le plus basiquement possible, vous fournissez soit un objet
- <classname>Zend_Locale</classname>, soit une chaîne représentant une locale complète
- au constructeur de <classname>Zend_Validate_PostCode</classname>.
- </para>
- <programlisting language="php"><![CDATA[
- $validator = new Zend_Validate_PostCode('fr_FR');
- $validator = new Zend_Validate_PostCode($locale);
- ]]></programlisting>
- <para>
- De plus, vous pouve zfournir un tableau ou un objet <classname>Zend_Config</classname>
- au constructeur. Quand vous faîtes ceci, vous devez inclure soit la clé "locale" ou
- "format" ;celles-ci seront utilisées pour paramétrer les valeurs appropriées dans
- l'objet validateur.
- </para>
- <programlisting language="php"><![CDATA[
- $validator = new Zend_Validate_PostCode(array(
- 'locale' => 'fr_FR',
- 'format' => 'FR-\d+'
- ));
- ]]></programlisting>
- </sect3>
- <sect3 id="zend.validate.set.post_code.options">
- <title>Options supportées par Zend_Validate_PostCode</title>
- <para>
- Les options suivantes sont supportées par
- <classname>Zend_Validate_PostCode</classname> :
- </para>
- <itemizedlist>
- <listitem>
- <para>
- <emphasis><property>format</property></emphasis> : spécifie le format
- de code postal qui sera utilisé pour la validation.
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis><property>locale</property></emphasis> : spécifie la locale
- à partir de laquelle le code postal sera récupéré.
- </para>
- </listitem>
- </itemizedlist>
- </sect3>
- </sect2>
|