Zend_Validate-Set.xml 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 17172 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.validate.set" xmlns:xi="http://www.w3.org/2001/XInclude">
  5. <title>Classes de validation standard</title>
  6. <para>
  7. Zend Framework est fourni avec un jeu de classes de validation standard, qui sont
  8. directement utilisables par votre application.
  9. </para>
  10. <sect2 id="zend.validate.set.alnum">
  11. <title>Alnum</title>
  12. <para>
  13. Retourne <constant>TRUE</constant> si et seulement si <varname>$value</varname> contient
  14. seulement des caractères alphabétiques et numériques. Ce validateur inclue une option
  15. permettant la validation possible des caractères espace.
  16. </para>
  17. </sect2>
  18. <sect2 id="zend.validate.set.alpha">
  19. <title>Alpha</title>
  20. <para>
  21. Retourne <constant>TRUE</constant> si et seulement si <varname>$value</varname> contient
  22. seulement des caractères alphabétiques. Ce validateur inclue une option permettant la
  23. validation possible des caractères espace.
  24. </para>
  25. <note>
  26. <para>
  27. Les caractères alphabétiques comprennent les caractères destinés à constituer
  28. des mots dans chaque langue. Cependant l'alphabet anglais est aussi utilisé pour les
  29. langues suivantes : chinois, japonais et coréen. La langue est spécifiée par
  30. <classname>Zend_Locale</classname>.
  31. </para>
  32. </note>
  33. </sect2>
  34. <sect2 id="zend.validate.set.barcode">
  35. <title>Barcode</title>
  36. <para>
  37. Ce validateur est instancié avec le type de code-barres suivant lequel vous
  38. souhaitez valider une valeur. Il supporte actuellement les types de code-barres
  39. "<code>UPC-A</code>" (Universal Product Code) et "<code>EAN-13</code>" (European Article
  40. Number), et la méthode <methodname>isValid()</methodname> retourne <constant>TRUE</constant> si et seulement
  41. si la valeur fournie est validée par l'algorithme de validation du code-barres. Vous
  42. devez retirer tous les caractères exceptés les nombres compris entre zéro et neuf (0-9)
  43. de la valeur à tester avant de la fournir au validateur.
  44. </para>
  45. </sect2>
  46. <sect2 id="zend.validate.set.between">
  47. <title>Between</title>
  48. <para>
  49. Retourne <constant>TRUE</constant> si et seulement si <varname>$value</varname> est compris
  50. entre les valeurs minimum et maximum définies. La comparaison inclue par défaut les
  51. bornes (<varname>$value</varname> peut égaler le minimum ou le maximum), bien que ceci puisse
  52. être surchargé pour avoir une comparaison stricte, où <varname>$value</varname> doit être
  53. strictement supérieur au minimum et strictement inférieur au maximum.
  54. </para>
  55. </sect2>
  56. <sect2 id="zend.validate.set.ccnum">
  57. <title>Ccnum</title>
  58. <para>
  59. Retourne <constant>TRUE</constant> si et seulement si <varname>$value</varname> respecte <ulink
  60. url="http://fr.wikipedia.org/wiki/Luhn">l'algorithme de Luhn ("module 10")</ulink> pour
  61. les numéros de cartes de crédits.
  62. </para>
  63. </sect2>
  64. <sect2 id="zend.validate.set.date">
  65. <title>Date</title>
  66. <para>
  67. Retourne <constant>TRUE</constant> si <varname>$value</varname> est une date valide au format
  68. <code>YYYY-MM-DD</code>. Si l'option <code>locale</code> est fournie alors la date sera
  69. validé suivant le paramètre local. Enfin si l'option <code>format</code> est fournie ce
  70. format est utilisé pour la validation. Pour plus de détails concernant les paramètres
  71. optionnel, referez vous à <link
  72. linkend="zend.date.others.comparison.table">Zend_Date::isDate()</link>.
  73. </para>
  74. </sect2>
  75. <xi:include href="Zend_Validate-Db.xml">
  76. <xi:fallback><xi:include href="../../en/module_specs/Zend_Validate-Db.xml" /></xi:fallback>
  77. </xi:include>
  78. <sect2 id="zend.validate.set.digits">
  79. <title>Digits</title>
  80. <para>
  81. Retourne <constant>TRUE</constant> si et seulement si <varname>$value</varname> contient
  82. seulement des caractères numériques.
  83. </para>
  84. </sect2>
  85. <xi:include href="Zend_Validate-EmailAddress.xml" />
  86. <sect2 id="zend.validate.set.float">
  87. <title>Float</title>
  88. <para>
  89. Retourne <constant>TRUE</constant> si et seulement si <varname>$value</varname> est une valeur
  90. en virgule flottante. A partir de Zend Framework 1.8 ce validateur prend en
  91. considération la locale courante issue du navigateur, de l'environnement ou de
  92. l'application. Vous pouvez bien sûr utiliser les accesseurs <code>get/setLocale</code>
  93. pour changer ou la fournir au moment de la création de l'instance de ce
  94. validateur.
  95. </para>
  96. </sect2>
  97. <sect2 id="zend.validate.set.greater_than">
  98. <title>GreaterThan</title>
  99. <para>
  100. Retourne <constant>TRUE</constant> si et seulement si <varname>$value</varname> est supérieure à
  101. une valeur minimum fournie.
  102. </para>
  103. </sect2>
  104. <sect2 id="zend.validate.set.hex">
  105. <title>Hex</title>
  106. <para>
  107. Retourne <constant>TRUE</constant> si et seulement si <varname>$value</varname> contient
  108. seulement des caractères numériques hexadécimaux.
  109. </para>
  110. </sect2>
  111. <xi:include href="Zend_Validate-Hostname.xml" />
  112. <sect2 id="zend.validate.set.iban">
  113. <title>Iban</title>
  114. <para>
  115. Retourne <constant>TRUE</constant> si et seulement si <varname>$value</varname> contient un IBAN
  116. valide (International Bank Account Number = Numéro de compte bancaire international).
  117. Les numéros IBAN sont validés suivant le pays dans lequel ils sont utilisés et par un
  118. somme de contrôle.
  119. </para>
  120. <para>
  121. Il existe deux manières de valider les numéros IBAN. En premier lieu, vous pouvez
  122. fournir une locale qui représente un pays. Tout numéro IBAN fourni sera donc validé
  123. suivant ce pays.
  124. </para>
  125. <programlisting language="php"><![CDATA[
  126. $validator = new Zend_Validate_Iban('de_AT');
  127. $iban = 'AT611904300234573201';
  128. if ($validator->isValid($iban)) {
  129. // IBAN paraît être valide
  130. } else {
  131. // IBAN est invalide
  132. foreach ($validator->getMessages() as $message) {
  133. echo "$message\n";
  134. }
  135. }
  136. ]]></programlisting>
  137. <para>
  138. Vous pouvez aussi vouloir valider les numéros IBAN pour des pays uniques. La
  139. manière la plus simple est donc de ne pas fournir de locale comme dans l'exemple
  140. suivant.
  141. </para>
  142. <programlisting language="php"><![CDATA[
  143. $validator = new Zend_Validate_Iban();
  144. $iban = 'AT611904300234573201';
  145. if ($validator->isValid($iban)) {
  146. // IBAN paraît être valide
  147. } else {
  148. // IBAN est invalide
  149. }
  150. ]]></programlisting>
  151. <para>
  152. Mais ceci montre un gros problème : si vous ne devez accepter que les numéros IBAN
  153. que pour un pays en particulier, par exemple l'Allemagne, alors les numéros IBAN des
  154. autres pays seront aussi valides. Dans ce cas, souvenez vous d'une chose : quand vous
  155. devez valider un numéro IBAN pour un pays donné, vous avez juste à fournir la locale
  156. correspondante. Et quand vous acceptez tous les numéros IBAN sans restriction de pays,
  157. enlevez simplement cette locale.
  158. </para>
  159. </sect2>
  160. <sect2 id="zend.validate.set.in_array">
  161. <title>InArray</title>
  162. <para>
  163. Retourne <constant>TRUE</constant> si et seulement si <varname>$value</varname> est contenue
  164. dans un tableau. Si l'option stricte est à <constant>TRUE</constant>, alors le type de
  165. <varname>$value</varname> est aussi vérifié.
  166. </para>
  167. </sect2>
  168. <sect2 id="zend.validate.set.int">
  169. <title>Int</title>
  170. <para>
  171. Retourne <constant>TRUE</constant> si et seulement si <varname>$value</varname> est une valeur
  172. entière. A partir de Zend Framework 1.8 ce validateur prend en considération la locale
  173. courante issue du navigateur, de l'environnement ou de l'application. Vous pouvez bien
  174. sûr utiliser les accesseurs <code>get/setLocale</code> pour changer ou la fournir au
  175. moment de la création de l'instance de ce validateur.
  176. </para>
  177. </sect2>
  178. <sect2 id="zend.validate.set.ip">
  179. <title>Ip</title>
  180. <para>
  181. Retourne <constant>TRUE</constant> si et seulement si <varname>$value</varname> est une adresse
  182. IP valide.
  183. </para>
  184. </sect2>
  185. <sect2 id="zend.validate.set.less_than">
  186. <title>LessThan</title>
  187. <para>
  188. Retourne <constant>TRUE</constant> si et seulement si <varname>$value</varname> est inférieure à
  189. une valeur maximum fournie.
  190. </para>
  191. </sect2>
  192. <sect2 id="zend.validate.set.not_empty">
  193. <title>NotEmpty</title>
  194. <para>
  195. Retourne <constant>TRUE</constant> si et seulement si <varname>$value</varname> est une valeur
  196. non vide.
  197. </para>
  198. </sect2>
  199. <sect2 id="zend.validate.set.regex">
  200. <title>Regex</title>
  201. <para>
  202. Retourne <constant>TRUE</constant> si et seulement si <varname>$value</varname> respecte une
  203. expression régulière fournie.
  204. </para>
  205. </sect2>
  206. <xi:include href="Zend_Validate-Sitemap.xml">
  207. <xi:fallback><xi:include href="../../en/module_specs/Zend_Validate-Sitemap.xml" /></xi:fallback>
  208. </xi:include>
  209. <sect2 id="zend.validate.set.string_length">
  210. <title>StringLength</title>
  211. <para>
  212. Retourne <constant>TRUE</constant> si et seulement si la longueur de la chaîne
  213. <varname>$value</varname> est supérieure à une valeur minimum et inférieure à une valeur
  214. maximum (quand l'option max n'est pas à <constant>NULL</constant>). La méthode
  215. <methodname>setMin()</methodname> lève une exception si la valeur fournie pour la longueur minimum
  216. est supérieure à celle fournie pour la longueur maximum, et la méthode
  217. <methodname>setMax()</methodname> lève une exception si la valeur fournie pour la longueur maximum
  218. est supérieure à celle fournie pour la longueur minimum. Cette classe supporte l'UTF-8
  219. et les autres encodages, en se basant sur la valeur courante de <ulink
  220. url="http://www.php.net/manual/fr/ref.iconv.php#iconv.configuration">
  221. <code>iconv.internal_encoding</code>
  222. </ulink>. Si vous avez besoin de régler un autre encodage, vous pouvez le faire avec
  223. les accesseurs <methodname>getEncoding()</methodname> et <methodname>setEncoding()</methodname>.
  224. </para>
  225. </sect2>
  226. </sect1>