| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- Reviewed: no -->
- <sect1 id="zend.validate.set" xmlns:xi="http://www.w3.org/2001/XInclude">
- <title>Standard Validation Classes</title>
- <para>
- Zend Framework comes with a standard set of validation classes, which are ready for you to
- use.
- </para>
- <sect2 id="zend.validate.set.alnum">
- <title>Alnum</title>
- <para>
- Returns <constant>TRUE</constant> if and only if <varname>$value</varname> contains only alphabetic
- and digit characters. This validator includes an option to also consider white space
- characters as valid.
- </para>
- <note>
- <para>
- The alphabetic characters mean characters that makes up words in each language.
- However, the English alphabet is treated as the alphabetic characters in following
- languages: Chinese, Japanese, Korean. The language is specified by <classname>Zend_Locale</classname>.
- </para>
- </note>
- </sect2>
- <sect2 id="zend.validate.set.alpha">
- <title>Alpha</title>
- <para>
- Returns <constant>TRUE</constant> if and only if <varname>$value</varname> contains only alphabetic
- characters. This validator includes an option to also consider white space characters
- as valid.
- </para>
- </sect2>
- <xi:include href="Zend_Validate-Barcode.xml" />
- <sect2 id="zend.validate.set.between">
- <title>Between</title>
- <para>
- Returns <constant>TRUE</constant> if and only if <varname>$value</varname> is between the minimum and
- maximum boundary values. The comparison is inclusive by default (<varname>$value</varname> may
- equal a boundary value), though this may be overridden in order to do a strict
- comparison, where <varname>$value</varname> must be strictly greater than the minimum and
- strictly less than the maximum.
- </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>
- Returns <constant>TRUE</constant> if and only if <varname>$value</varname> follows the Luhn algorithm
- (mod-10 checksum) for credit card numbers.
- </para>
- <note>
- <para>
- The <classname>Ccnum</classname> validator has been deprecated in favor of the
- <classname>CreditCard</classname> validator. For security reasons you should use
- CreditCard instead of Ccnum.
- </para>
- </note>
- </sect2>
- <sect2 id="zend.validate.set.date">
- <title>Date</title>
- <para>
- Returns <constant>TRUE</constant> if <varname>$value</varname> is a valid date of the
- format 'YYYY-MM-DD'. If the optional <property>locale</property> option is set then the
- date will be validated according to the set locale. And if the optional
- <property>format</property> option is set this format is used for the validation. for
- details about the optional parameters see <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>
- Returns <constant>TRUE</constant> if and only if <varname>$value</varname> only contains digit
- characters.
- </para>
- </sect2>
- <xi:include href="Zend_Validate-EmailAddress.xml" />
- <sect2 id="zend.validate.set.float">
- <title>Float</title>
- <para>
- Returns <constant>TRUE</constant> if and only if <varname>$value</varname> is a floating-point value.
- Since Zend Framework 1.8 this validator takes into account the actual locale from
- browser, environment or application wide set locale. You can of course use the
- get/setLocale accessors to change the used locale or give it while creating a instance
- of this validator.
- </para>
- </sect2>
- <sect2 id="zend.validate.set.greater_than">
- <title>GreaterThan</title>
- <para>
- Returns <constant>TRUE</constant> if and only if <varname>$value</varname> is greater than the minimum
- boundary.
- </para>
- </sect2>
- <sect2 id="zend.validate.set.hex">
- <title>Hex</title>
- <para>
- Returns <constant>TRUE</constant> if and only if <varname>$value</varname> contains only hexadecimal
- digit characters.
- </para>
- </sect2>
- <xi:include href="Zend_Validate-Hostname.xml" />
- <sect2 id="zend.validate.set.iban">
- <title>Iban</title>
- <para>
- Returns <constant>TRUE</constant> if and only if <varname>$value</varname> contains a valid IBAN
- (International Bank Account Number). IBAN numbers are validated against the country
- where they are used and by a checksum.
- </para>
- <para>
- There are two ways to validate IBAN numbers. As first way you can give a locale which
- represents a country. Any given IBAN number will then be validated against this country.
- </para>
- <programlisting language="php"><![CDATA[
- $validator = new Zend_Validate_Iban('de_AT');
- $iban = 'AT611904300234573201';
- if ($validator->isValid($iban)) {
- // IBAN appears to be valid
- } else {
- // IBAN is invalid
- foreach ($validator->getMessages() as $message) {
- echo "$message\n";
- }
- }
- ]]></programlisting>
- <para>
- This should be done when you want to validate IBAN numbers for a single countries. The
- simpler way of validation is not to give a locale like shown in the next example.
- </para>
- <programlisting language="php"><![CDATA[
- $validator = new Zend_Validate_Iban();
- $iban = 'AT611904300234573201';
- if ($validator->isValid($iban)) {
- // IBAN appears to be valid
- } else {
- // IBAN is invalid
- }
- ]]></programlisting>
- <para>
- But this shows one big problem: When you have to accept only IBAN numbers from one
- single country, for example france, then IBAN numbers from other countries would also be
- valid. Therefor just remember: When you have to validate a IBAN number against a defined
- country you should give the locale. And when you accept all IBAN numbers regardless of
- any country omit the locale for simplicity.
- </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>
- Returns <constant>TRUE</constant> if and only if <varname>$value</varname> is a valid integer. Since
- Zend Framework 1.8 this validator takes into account the actual locale from browser,
- environment or application wide set locale. You can of course use the get/setLocale
- accessors to change the used locale or give it while creating a instance of this
- validator.
- </para>
- </sect2>
- <xi:include href="Zend_Validate-Ip.xml" />
- <sect2 id="zend.validate.set.less_than">
- <title>LessThan</title>
- <para>
- Returns <constant>TRUE</constant> if and only if <varname>$value</varname> is less than
- the maximum boundary.
- </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>
- Returns <constant>TRUE</constant> if and only if <varname>$value</varname> matches
- against a regular expression pattern.
- </para>
- </sect2>
- <xi:include href="Zend_Validate-Sitemap.xml" />
- <sect2 id="zend.validate.set.string_length">
- <title>StringLength</title>
- <para>
- Returns <constant>TRUE</constant> if and only if the string length of
- <varname>$value</varname> is at least a minimum and no greater than a maximum (when the
- max option is not <constant>NULL</constant>). The <methodname>setMin()</methodname>
- method throws an exception if the minimum length is set to a value greater than the set
- maximum length, and the <methodname>setMax()</methodname> method throws an exception if
- the maximum length is set to a value less than the set minimum length. This class
- supports UTF-8 and other character encodings, based on the current value of <ulink
- url="http://www.php.net/manual/en/ref.iconv.php#iconv.configuration">iconv.internal_encoding</ulink>.
- If you need a different encoding you can set it with the accessor methods getEncoding
- and setEncoding.
- </para>
- </sect2>
- </sect1>
- <!--
- vim:se ts=4 sw=4 et:
- -->
|