Zend_Validate-Identical.xml 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <!-- EN-Revision: 21243 -->
  3. <!-- Reviewed: no -->
  4. <sect2 id="zend.validate.set.identical">
  5. <title>Identical</title>
  6. <para>
  7. <classname>Zend_Validate_Identical</classname> vous permet de valider si une valeur donnée
  8. est identique à une valeur préalablement fournie.
  9. </para>
  10. <sect3 id="zend.validate.set.identical.options">
  11. <title>Options supportées par Zend_Validate_Identical</title>
  12. <para>
  13. Les options suivantes sont supportées par
  14. <classname>Zend_Validate_Identical</classname>&#160;:
  15. </para>
  16. <itemizedlist>
  17. <listitem>
  18. <para>
  19. <emphasis><property>token</property></emphasis>&#160;: spécifie la valeur
  20. qui servira à la validation de l'entrée.
  21. </para>
  22. </listitem>
  23. </itemizedlist>
  24. </sect3>
  25. <sect3 id="zend.validate.set.identical.basic">
  26. <title>Utilisation de base</title>
  27. <para>
  28. Pour valider si deux valeurs sont identiques, vous devez d'abord fournir la valeur
  29. d'origine. L'exemple montre la validation de deux chaînes&#160;:
  30. </para>
  31. <programlisting language="php"><![CDATA[
  32. $valid = new Zend_Validate_Identical('origin');
  33. if ($valid->isValid($value) {
  34. return true;
  35. }
  36. ]]></programlisting>
  37. <para>
  38. La validation retournera <constant>TRUE</constant> seulement si les deux valeurs
  39. sont rigoureusement identiques. Dans notre exemple, quand <varname>$value</varname>
  40. vaudra "origin".
  41. </para>
  42. <para>
  43. Vous pouvez aussi fournir la valeur souhaitée plus tard en utilisant la méthode
  44. <methodname>setToken()</methodname> et <methodname>getToken()</methodname> pour
  45. récupérer la valeur actuellement paramétrée.
  46. </para>
  47. </sect3>
  48. <sect3 id="zend.validate.set.identical.types">
  49. <title>Objets identiques</title>
  50. <para>
  51. Bien sûr <classname>Zend_Validate_Identical</classname> ne se limite pas à la
  52. validation de chaînes, mais aussi tout type de variable comme un booléen, un
  53. entier, un flottant, un tableau et même les objets. Comme énoncé ci-dessus, les
  54. valeurs fournies et à valider doivent être identiques.
  55. </para>
  56. <programlisting language="php"><![CDATA[
  57. $valid = new Zend_Validate_Identical(123);
  58. if ($valid->isValid($input)) {
  59. // l'entrée est valide
  60. } else {
  61. // l'entrée est incorrecte
  62. }
  63. ]]></programlisting>
  64. <note>
  65. <title>Comparaison de type</title>
  66. <para>
  67. Il est important de noter que le type de la variable sert aussi lors de la
  68. validation. Ceci veut dire que la chaîne <emphasis>"3"</emphasis> n'est pas
  69. identique à l'entier <emphasis>3</emphasis>.
  70. </para>
  71. <para>
  72. Ceci est aussi valable pour les éléments de formulaires. Ce sont des objets ou
  73. des tableaux. Donc vous ne pouvez pas simplement comparer un champs texte qui
  74. contient un mot de passe avec une valeur textuelle provenant d'une autre source.
  75. L'élément de formualire lui-même est fourni en tant que tableau qui peut aussi
  76. contenir des informations additionnelles.
  77. </para>
  78. </note>
  79. </sect3>
  80. <sect3 id="zend.validate.set.identical.configuration">
  81. <title>Configuration</title>
  82. <para>
  83. omme tous les autres validateurs <classname>Zend_Validate_Identical</classname>
  84. supporte aussi des paramètres de configuration en tant que paramètre d'entrée.
  85. Ceci veut dire que vous pouvez configurer ce validateur avec une objet
  86. <classname>Zend_Config</classname>.
  87. </para>
  88. <para>
  89. Mais ceci entraîne un changement dont vous devez tenir compte. Quand vous utilisez
  90. un tableau en tant qu'entrée du constructeur, vous devez envelopper la valeur
  91. d'origine avec la clé <property>token</property>, dans ce cas elle contiendra une
  92. valeur unique.
  93. </para>
  94. <programlisting language="php"><![CDATA[
  95. $valid = new Zend_Validate_Identical(array('token' => 123));
  96. if ($valid->isValid($input)) {
  97. // l'entrée est valide
  98. } else {
  99. // l'entrée est incorrecte
  100. }
  101. ]]></programlisting>
  102. <para>
  103. L'exemple ci-dessus valide l'entier 123 car vous avez fourni la valeur en l'associant
  104. à la clé <property>token</property>.
  105. </para>
  106. <para>
  107. Mais, si vous devez valider un tableau qui contient un seul élément et que cet élément
  108. est nommé <property>token</property> alors vous devez l'envelopper comme dans l'example
  109. ci-dessous&#160;:
  110. </para>
  111. <programlisting language="php"><![CDATA[
  112. $valid = new Zend_Validate_Identical(array('token' => array('token' => 123)));
  113. if ($valid->isValid($input)) {
  114. // l'entrée est valide
  115. } else {
  116. // l'entrée est incorrecte
  117. }
  118. ]]></programlisting>
  119. </sect3>
  120. </sect2>