Zend_Validate-Ip.xml 4.2 KB

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