| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- EN-Revision: 24249 -->
- <!-- Reviewed: no -->
- <sect2 id="zend.validate.set.ip">
- <title>Ip</title>
- <para>
- <classname>Zend_Validate_Ip</classname> erlaubt es zu Prüfen ob ein gegebener Wert eine IP
- Adresse ist. Er unterstützt den IPv4 und auch den IPv6 Standard.
- </para>
- <sect3 id="zend.validate.set.ip.options">
- <title>Unterstützte Optionen für Zend_Validate_Ip</title>
- <para>
- Die folgenden Optionen werden für <classname>Zend_Validate_Ip</classname> unterstützt:
- </para>
- <itemizedlist>
- <listitem>
- <para>
- <emphasis><property>allowipv4</property></emphasis>: Definiert ob die Prüfung
- IPv4 Adressen erlaubt. Diese Option ist standardmäßig <constant>TRUE</constant>.
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis><property>allowipv6</property></emphasis>: Definiert ob die Prüfung
- IPv6 Adressen erlaubt. Diese Option ist standardmäßig <constant>TRUE</constant>.
- </para>
- </listitem>
- </itemizedlist>
- </sect3>
- <sect3 id="zend.validate.set.ip.basic">
- <title>Grundsätzliche Verwendung</title>
- <para>
- Ein einfaches Beispiel für die Verwendung ist anbei:
- </para>
- <programlisting language="php"><![CDATA[
- $validator = new Zend_Validate_Ip();
- if ($validator->isValid($ip)) {
- // IP scheint gültig zu sein
- } else {
- // IP ist ungültig; Gründe ausgeben
- }
- ]]></programlisting>
- <note>
- <title>Ungültige IP Adressen</title>
- <para>
- Es ist zu beachten das <classname>Zend_Validate_Ip</classname> nur IP Adressen
- prüft. Adressen wie '<filename>mydomain.com</filename>' oder
- '<filename>192.168.50.1/index.html</filename>' sind keine gültigen IP Adressen. Sie
- sind entweder Hostnamen oder gültige <acronym>URL</acronym>s, aber keine IP
- Adressen.
- </para>
- </note>
- <note>
- <title>IPv6 Prüfung</title>
- <para>
- <classname>Zend_Validate_Ip</classname> prüft IPv6 Adressen mit einer Regex. Der
- Grund ist, dass die Filter und Methoden von <acronym>PHP</acronym> der
- <acronym>RFC</acronym> nicht folgen. Viele andere vorhandene Klassen folgen Ihr auch
- nicht.
- </para>
- </note>
- </sect3>
- <sect3 id="zend.validate.set.ip.singletype">
- <title>IPv4 oder IPv6 alleine prüfen</title>
- <para>
- Manchmal ist es nützlich nur eines der unterstützten Formate zu prüfen. Zum Beispiel
- wenn das eigene Netzwert nur IPv4 unterstützt. In diesem Fall wäre es sinnlos IPv6
- in der Prüfung zu erlauben.
- </para>
- <para>
- Um <classname>Zend_Validate_Ip</classname> auf ein Protokoll zu begrenzen kann man die
- Optionen <property>allowipv4</property> oder <property>allowipv6</property> auf
- <constant>FALSE</constant> setzen. Man kann das durchführen indem die Option entweder im
- Constructor angegeben wird, oder indem <methodname>setOptions()</methodname> im
- Nachhinein verwendet wird.
- </para>
- <programlisting language="php"><![CDATA[
- $validator = new Zend_Validate_Ip(array('allowipv6' => false);
- if ($validator->isValid($ip)) {
- // IP scheint eine gültige IPv4 Adresse zu sein
- } else {
- // IP ist keine IPv4 Adresse
- }
- ]]></programlisting>
- <note>
- <title>Standard Verhalten</title>
- <para>
- Das Standardverhalten dem <classname>Zend_Validate_Ip</classname> folgt, ist es
- beide Standards zu erlauben.
- </para>
- </note>
- </sect3>
- </sect2>
|