Zend_Validate-Ip.xml 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 20794 -->
  3. <!-- Reviewed: no -->
  4. <sect2 id="zend.validate.set.ip">
  5. <title>Ip</title>
  6. <para>
  7. <classname>Zend_Validate_Ip</classname> permet de déterminer si une adresse IP donnée
  8. est valide. Le composant supporte IPv4 et IPv6.
  9. </para>
  10. <sect3 id="zend.validate.set.ip.basic">
  11. <title>Utilisation classique</title>
  12. <para>
  13. Voici un exemple banal:
  14. </para>
  15. <programlisting language="php"><![CDATA[
  16. $validator = new Zend_Validate_Ip();
  17. if ($validator->isValid($ip)) {
  18. // ip semble valide
  19. } else {
  20. // ip n'est pas valide
  21. }
  22. ]]></programlisting>
  23. <note>
  24. <title>adresses IP invalides</title>
  25. <para>
  26. <classname>Zend_Validate_Ip</classname> ne valide que des adresses IP.
  27. 'mydomain.com' ou '192.168.50.1/index.html' ne sont donc pas des adresses IP valides.
  28. Ce sont des noms de domaines ou des <acronym>URL</acronym>s mais pas des adresses IP.
  29. </para>
  30. </note>
  31. <note>
  32. <title>Validation IPv6</title>
  33. <para>
  34. <classname>Zend_Validate_Ip</classname> valides les adresses IPv6 au moyen d'expressions
  35. régulières. La raison est que les fonctions fournies par PHP ne suivent pas le RFC.
  36. Beaucoup d'autres classes disponibles font de même.
  37. </para>
  38. </note>
  39. </sect3>
  40. <sect3 id="zend.validate.set.ip.singletype">
  41. <title>Valider IPv4 ou IPV6 seules</title>
  42. <para>
  43. Il peut arriver de ne vouloir valider qu'un seul des deux formats. Par exemple si le réseau
  44. ne supporte pas IPv6, il serait idiot de demander une telle validation.
  45. </para>
  46. <para>
  47. Pour limiter <classname>Zend_Validate_Ip</classname> sur un seul des deux protocoles, utilisez
  48. les options <property>allowipv4</property> ou <property>allowipv6</property> et mettez les à
  49. <constant>FALSE</constant>. Il est possible d'effectuer celà au moyen du constructeur ou
  50. avec la méthode <methodname>setOptions()</methodname>.
  51. </para>
  52. <programlisting language="php"><![CDATA[
  53. $validator = new Zend_Validate_Ip(array('allowipv6' => false);
  54. if ($validator->isValid($ip)) {
  55. // ip semble être une IPv4 valide
  56. } else {
  57. // ip n'est pas une adresse IPv4
  58. }
  59. ]]></programlisting>
  60. <note>
  61. <title>Comportement par défaut</title>
  62. <para>
  63. Le comportement par défaut de <classname>Zend_Validate_Ip</classname> est de valider
  64. les deux standards.
  65. </para>
  66. </note>
  67. </sect3>
  68. </sect2>
  69. <!--
  70. vim:se ts=4 sw=4 et:
  71. -->