Zend_Validate-Ip.xml 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- Reviewed: no -->
  3. <!-- EN-Revision: 19150 -->
  4. <sect2 id="zend.validate.set.ip">
  5. <title>Ip</title>
  6. <para>
  7. <classname>Zend_Validate_Ip</classname> は、与えられた値が
  8. IP アドレスかどうか検証できるようにします。
  9. これは IPv4 及び IPv6 標準をサポートします。
  10. </para>
  11. <sect3 id="zend.validate.set.ip.basic">
  12. <title>基本的な使用法</title>
  13. <para>
  14. 基本的な使用法は、以下のようになります。
  15. </para>
  16. <programlisting language="php"><![CDATA[
  17. $validator = new Zend_Validate_Ip();
  18. if ($validator->isValid($ip)) {
  19. // ip は正しい形式のようです
  20. } else {
  21. // ip が不正なので、理由を表示します
  22. }
  23. ]]></programlisting>
  24. <note>
  25. <title>IP アドレスの検証</title>
  26. <para>
  27. <classname>Zend_Validate_Ip</classname> は IP アドレスだけを検証することを記憶にとどめてください。
  28. 'mydomain.com' や '192.168.50.1/index.html' のようなアドレスは、有効な IP アドレスではありません。
  29. それらは IP アドレスではなく、 hostname または 有効な <acronym>URL</acronym> です。
  30. </para>
  31. </note>
  32. <note>
  33. <title>IPv6 の検証</title>
  34. <para>
  35. <classname>Zend_Validate_Ip</classname> は正規表現で IPv6 アドレスを検証します。
  36. それは、 PHP 自身のフィルターやメソッドが RFC に準拠していないからです。
  37. 他の多くの利用可能なクラスもまた、それに準拠しません。
  38. </para>
  39. </note>
  40. </sect3>
  41. <sect3 id="zend.validate.set.ip.singletype">
  42. <title>IPv4 または IPV6 だけを検証</title>
  43. <para>
  44. しばしば、サポートされる形式のうちの1つだけを検証するために役立ちます。
  45. たとえば、ネットワークが IPv4 だけをサポートするときです。
  46. この場合、このバリデータ内で IPv6 を受け付けることは無駄でしょう。
  47. </para>
  48. <para>
  49. <classname>Zend_Validate_Ip</classname> をプロトコル1つに制限するために、
  50. オプション <property>allowipv4</property> または <property>allowipv6</property> を
  51. <constant>FALSE</constant> に設定できます。
  52. これは、コンストラクタにオプションを与えることによって、
  53. または、その後 <methodname>setOptions()</methodname> を用いて行なえます。
  54. </para>
  55. <programlisting language="php"><![CDATA[
  56. $validator = new Zend_Validate_Ip(array('allowipv6' => false);
  57. if ($validator->isValid($ip)) {
  58. // ip は正しい ip4v アドレスのようです
  59. } else {
  60. // ip は ipv4 アドレスではありません
  61. }
  62. ]]></programlisting>
  63. <note>
  64. <title>既定の動作</title>
  65. <para>
  66. <classname>Zend_Validate_Ip</classname> が従う既定の動作は
  67. 両方の標準を受け付ける、です。
  68. </para>
  69. </note>
  70. </sect3>
  71. </sect2>
  72. <!--
  73. vim:se ts=4 sw=4 et:
  74. -->