| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- EN-Revision: 20229 -->
- <!-- Reviewed: no -->
- <sect1 id="zend.validate.set" xmlns:xi="http://www.w3.org/2001/XInclude">
- <title>Standard Prüfklassen</title>
- <para>
- Zend Framework kommt mit einem Standardset von Prüfklassen, welche fertig zur Verwendung
- sind.
- </para>
- <sect2 id="zend.validate.set.alnum">
- <title>Alnum</title>
- <para>
- Gibt nur dann <constant>TRUE</constant> zurück wenn <varname>$value</varname> nur
- alphabetische und digitale Zeichen enthält. Dieser Prüfer enthält eine Option um
- auszuwählen ob Leerzeichen als gültig anzusehen sind.
- </para>
- <note>
- <para>
- Alphabetische Zeichen bedeuten Zeichen die in jeder Spache Wörter bilden. Trotzdem
- wird das englische Alphabet in den folgenden Sprachen für alphabethische Zeichen
- verwendet: Chinesisch, Japanisch, Koreanisch. Die Sprache wurde von
- <classname>Zend_Locale</classname> spezifiziert.
- </para>
- </note>
- </sect2>
- <sect2 id="zend.validate.set.alpha">
- <title>Alpha</title>
- <para>
- Gibt nur dann <constant>TRUE</constant> zurück wenn <varname>$value</varname> nur
- alphabetische Zeichen enthält. Dieser Prüfer enthält eine Option um auszuwählen ob
- Leerzeichen als gültig anzusehen sind.
- </para>
- </sect2>
- <xi:include href="Zend_Validate-Barcode.xml" />
- <sect2 id="zend.validate.set.between">
- <title>Between</title>
- <para>
- Gibt nur dann <constant>TRUE</constant> zurück wenn <varname>$value</varname> zwischen
- dem minimalen und maximalen Grenzwert ist. Der Vergleich ist standardmäßig inklusive
- (<varname>$value</varname> kann gleich dem Grenzwert sein), kann aber überschrieben
- werden um einen strikten Vergleich dort durchzuführen wo <varname>$value</varname>
- strikt größer als das Minimum und strikt kleiner als das Maximum sein muß.
- </para>
- </sect2>
- <xi:include href="Zend_Validate-Callback.xml" />
- <xi:include href="Zend_Validate-CreditCard.xml" />
- <sect2 id="zend.validate.set.ccnum">
- <title>Ccnum</title>
- <para>
- Gibt nur dann <constant>TRUE</constant> zurück wenn <varname>$value</varname> dem Luhn
- Algorithmus (mod-10 Checksumme) für Kreditkarten Nummern folgt.
- </para>
- <note>
- <para>
- Die <classname>Ccnum</classname> Prüfung sollte nicht mehr eingesetzt werden.
- Stattdessen sollte man die <classname>CreditCard</classname> Prüfung verwenden.
- Aus Gründen der Sicherheit sollte man CreditCard statt Ccnum verwenden.
- </para>
- </note>
- </sect2>
- <sect2 id="zend.validate.set.date">
- <title>Date</title>
- <para>
- Gibt nur dann <constant>TRUE</constant> zurück wenn <varname>$value</varname> ein
- gültiges Datum im Format 'YYYY-MM-DD' ist. Wenn die optionale
- <property>locale</property> Option gesetzt ist, dann wird das Datum entsprechend dem
- gesetzten Gebietsschemas geprüft. Und wenn die optionale <property>format</property>
- Option gesetzt wird, dann wird dieses Format für die Prüfung herangezogen. Für Details
- über die optionalen Parametern siehe <link
- linkend="zend.date.others.comparison.table">Zend_Date::isDate()</link>.
- </para>
- </sect2>
- <xi:include href="Zend_Validate-Db.xml" />
- <sect2 id="zend.validate.set.digits">
- <title>Digits</title>
- <para>
- Gibt nur dann <constant>TRUE</constant> zurück wenn <varname>$value</varname> nur
- digitale Zeichen enthält.
- </para>
- </sect2>
- <xi:include href="Zend_Validate-EmailAddress.xml" />
- <sect2 id="zend.validate.set.float">
- <title>Float</title>
- <para>
- Gibt nur dann <constant>TRUE</constant> zurück wenn <varname>$value</varname> ein
- Fließkomma Wert ist. Seit Zend Framework 1.8 verwendet diese Prüfung auch das aktuelle
- Gebietsschema des Browsers, der Umgebung oder eines anwendungsweit gesetzten
- Gebietsschemas. Man kann natürlich die Zugriffsmethoden get/setLocale verwenden um das
- verwendete Gebietsschema zu verändern oder es bei der Erstellung einer Instanz dieser
- Prüfung angeben.
- </para>
- </sect2>
- <sect2 id="zend.validate.set.greater_than">
- <title>GreaterThan</title>
- <para>
- Gibt nur dann <constant>TRUE</constant> zurück wenn <varname>$value</varname> größer als
- die Minimale Grenze ist.
- </para>
- </sect2>
- <sect2 id="zend.validate.set.hex">
- <title>Hex</title>
- <para>
- Gibt nur dann <constant>TRUE</constant> zurück wenn <varname>$value</varname> nur
- Hexadezimale Digitale Zeichen enthält.
- </para>
- </sect2>
- <xi:include href="Zend_Validate-Hostname.xml" />
- <sect2 id="zend.validate.set.iban">
- <title>Iban</title>
- <para>
- Gibe nur dann <constant>TRUE</constant> zurück wenn <varname>$value</varname> eine
- gültige IBAN (Internationale Bank Account Nummer) enthält. IBAN Nummern werden gegen ein
- Land geprüft in dem Sie verwendet werden und durch eine Checksumme.
- </para>
- <para>
- Es gibt zwei Wege um IBAN Nummern zu prüfen. Als ersten Weg kann man ein Gebietsschema
- angeben welches das Land repräsentiert. Jede angegebene IBAN Nummer wird das gegen
- dieses Land geprüft.
- </para>
- <programlisting language="php"><![CDATA[
- $validator = new Zend_Validate_Iban('de_AT');
- $iban = 'AT611904300234573201';
- if ($validator->isValid($iban)) {
- // IBAN scheint gültig zu sein
- } else {
- // IBAN ist ungültig
- foreach ($validator->getMessages() as $message) {
- echo "$message\n";
- }
- }
- ]]></programlisting>
- <para>
- Das sollte man tun wenn man IBAN Nummern gegen ein einzelnes Land prüfen will. Der
- einfachere Weg der Prüfung ist es kein Gebietsschema anzugeben wie im nächsten Beispiel
- gezeigt.
- </para>
- <programlisting language="php"><![CDATA[
- $validator = new Zend_Validate_Iban();
- $iban = 'AT611904300234573201';
- if ($validator->isValid($iban)) {
- // IBAN scheint gültig zu sein
- } else {
- // IBAN ist ungültig
- }
- ]]></programlisting>
- <para>
- Aber das zeigt ein großes Problem: Wenn man nur IBAN Nummern von einem einzelnen Land
- akzeptieren darf, zum Beispiel Frankreich, sind auch die IBAN Nummer von anderen Ländern
- gültig. Deshalb als Erinnerung: Wenn man IBAN Nummern gegen ein definiertes Land zu
- prüfen hat, sollte man ein Gebietsschema angeben. Und wenn man alle IBAN Nummern
- akzeptieren will unabhängig von irgendeinem Land kann der Einfachheit halber das
- Gebietsschema unterdrückt werden.
- </para>
- </sect2>
- <xi:include href="Zend_Validate-Identical.xml" />
- <xi:include href="Zend_Validate-InArray.xml" />
- <sect2 id="zend.validate.set.int">
- <title>Int</title>
- <para>
- Gibt nur dann <constant>TRUE</constant> zurück wenn <varname>$value</varname> ein
- gültiger Integer ist. Seit Zend Framework 1.8 verwendet diese Prüfung auch das aktuelle
- Gebietsschema des Browsers, der Umgebung oder eines anwendungsweit gesetzten
- Gebietsschemas. Man kann natürlich die Zugriffsmethoden get/setLocale verwenden um das
- verwendete Gebietsschema zu verändern oder es bei der Erstellung einer Instanz dieser
- Prüfung angeben.
- </para>
- </sect2>
- <xi:include href="Zend_Validate-Isbn.xml" />
- <xi:include href="Zend_Validate-Ip.xml" />
- <sect2 id="zend.validate.set.less_than">
- <title>LessThan</title>
- <para>
- Gibt nur dann <constant>TRUE</constant> zurück wenn <varname>$value</varname> kleiner
- als die Maximale Grenze ist.
- </para>
- </sect2>
- <xi:include href="Zend_Validate-NotEmpty.xml" />
- <xi:include href="Zend_Validate-PostCode.xml" />
- <sect2 id="zend.validate.set.regex">
- <title>Regex</title>
- <para>
- Gibt nur dann <constant>TRUE</constant> zurück wenn <varname>$value</varname> mit einem
- Regular Expression Pattern geprüft werden kann.
- </para>
- </sect2>
- <xi:include href="Zend_Validate-Sitemap.xml" />
- <sect2 id="zend.validate.set.string_length">
- <title>StringLength</title>
- <para>
- Gibt nur dann <constant>TRUE</constant> zurück wenn die Länge des Strings von
- <varname>$value</varname> mindstens ein Minimum und nicht größer als ein Maximum ist
- (wenn die max Option nicht <constant>NULL</constant> ist). Wirft die
- <methodname>setMin()</methodname> Methode eine Ausnahme wenn die minimale Länge auf
- einen größeren Wert gesetzt wird als die maximale Länge, und die
- <methodname>setMax()</methodname> Methode wirft eine Ausnahme wenn die maximale Länge
- auf einen kleineren Wert als die minimale Länge gesetzt wird. Seit Version 1.0.2
- unterstützt diese Klasse UTF-8 und andere Zeichensätze, basierend auf dem aktuellen Wert
- von <ulink
- url="http://www.php.net/manual/de/ref.iconv.php#iconv.configuration">iconv.internal_encoding</ulink>.
- Wenn man ein anderes Encoding benötigt kann man es mit den Zugriffsmethoden getEncoding
- und setEncoding setzen.
- </para>
- </sect2>
- </sect1>
- <!--
- vim:se ts=4 sw=4 et:
- -->
|