|
|
@@ -0,0 +1,88 @@
|
|
|
+<?xml version="1.0" encoding="UTF-8"?>
|
|
|
+<!-- EN-Revision: 18986 -->
|
|
|
+<!-- 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.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 'mydomain.com' oder '192.168.50.1/index.html' 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 PHP der RFC 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>
|
|
|
+<!--
|
|
|
+vim:se ts=4 sw=4 et:
|
|
|
+-->
|