[GENERIC] Zend_Translate:
[zend.git] / documentation / manual / en / module_specs / Zend_Validate-Isbn.xml
blob5a282601263fa1741e8cef597ee9ffdf92ee3029
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- Reviewed: no -->
3 <sect2 id="zend.validate.set.isbn">
4     <title>Isbn</title>
6     <para>
7         <classname>Zend_Validate_Isbn</classname> allows you to validate an
8         <acronym>ISBN-10</acronym> or <acronym>ISBN-13</acronym> value.
9     </para>
11     <sect3 id="zend.validate.set.isbn.options">
12         <title>Supported options for Zend_Validate_Isbn</title>
14         <para>
15             The following options are supported for <classname>Zend_Validate_Isbn</classname>:
16         </para>
18         <itemizedlist>
19             <listitem>
20                 <para>
21                     <emphasis><property>separator</property></emphasis>: Defines the allowed
22                     separator for the <acronym>ISBN</acronym> number. It defaults to an empty
23                     string.
24                 </para>
25             </listitem>
27             <listitem>
28                 <para>
29                     <emphasis><property>type</property></emphasis>: Defines the allowed type of
30                     <acronym>ISBN</acronym> numbers. It defaults to
31                     <constant>Zend_Validate_Isbn::AUTO</constant>. For details take a look at
32                     <link linkend="zend.validate.set.isbn.type-explicit">this section</link>.
33                 </para>
34             </listitem>
35         </itemizedlist>
36     </sect3>
38     <sect3 id="zend.validate.set.isbn.basic">
39         <title>Basic usage</title>
41         <para>
42             A basic example of usage is below:
43         </para>
45         <programlisting language="php"><![CDATA[
46 $validator = new Zend_Validate_Isbn();
47 if ($validator->isValid($isbn)) {
48     // isbn is valid
49 } else {
50     // isbn is not valid
52 ]]></programlisting>
54         <para>
55             This will validate any <acronym>ISBN-10</acronym> and <acronym>ISBN-13</acronym> without
56             separator.
57         </para>
58     </sect3>
60     <sect3 id="zend.validate.set.isbn.type-explicit">
61         <title>Setting an explicit ISBN validation type</title>
63         <para>
64             An example of an <acronym>ISBN</acronym> type restriction is below:
65         </para>
67         <programlisting language="php"><![CDATA[
68 $validator = new Zend_Validate_Isbn();
69 $validator->setType(Zend_Validate_Isbn::ISBN13);
70 // OR
71 $validator = new Zend_Validate_Isbn(array(
72     'type' => Zend_Validate_Isbn::ISBN13,
73 ));
75 if ($validator->isValid($isbn)) {
76     // this is a valid ISBN-13 value
77 } else {
78     // this is an invalid ISBN-13 value
80 ]]></programlisting>
82         <para>
83             The above will validate only <acronym>ISBN-13</acronym> values.
84         </para>
86         <para>
87             Valid types include:
88         </para>
90         <itemizedlist>
91             <listitem>
92                 <para><constant>Zend_Validate_Isbn::AUTO</constant> (default)</para>
93             </listitem>
95             <listitem>
96                 <para><constant>Zend_Validate_Isbn::ISBN10</constant></para>
97             </listitem>
99             <listitem>
100                 <para><constant>Zend_Validate_Isbn::ISBN13</constant></para>
101             </listitem>
102         </itemizedlist>
103     </sect3>
105     <sect3 id="zend.validate.set.isbn.separator">
106         <title>Specifying a separator restriction</title>
108         <para>
109             An example of separator restriction is below:
110         </para>
112         <programlisting language="php"><![CDATA[
113 $validator = new Zend_Validate_Isbn();
114 $validator->setSeparator('-');
115 // OR
116 $validator = new Zend_Validate_Isbn(array(
117     'separator' => '-',
120 if ($validator->isValid($isbn)) {
121     // this is a valid ISBN with separator
122 } else {
123     // this is an invalid ISBN with separator
125 ]]></programlisting>
127         <note>
128             <title>Values without separator</title>
130             <para>
131                 This will return <constant>FALSE</constant> if <varname>$isbn</varname> doesn't
132                 contain a separator <emphasis>or</emphasis> if it's an invalid
133                 <acronym>ISBN</acronym> value.
134             </para>
135         </note>
137         <para>
138             Valid separators include:
139         </para>
141         <itemizedlist>
142             <listitem><para>"" (empty) (default)</para></listitem>
143             <listitem><para>"-" (hyphen)</para></listitem>
144             <listitem><para>" " (space)</para></listitem>
145         </itemizedlist>
146     </sect3>
147 </sect2>
148 <!--
149 vim:se ts=4 sw=4 et: