Selaa lähdekoodia

sync mainly 22821

git-svn-id: http://framework.zend.com/svn/framework/standard/trunk@23327 44c647ce-9c0f-0410-b52a-842ac1e357ba
yoshida@zend.co.jp 15 vuotta sitten
vanhempi
commit
1bf8f1a265

+ 253 - 105
documentation/manual/ja/module_specs/Zend_Filter-Encryption.xml

@@ -1,90 +1,88 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!-- Reviewed: no -->
-<!-- EN-Revision: 21994 -->
+<!-- EN-Revision: 22821 -->
 <sect2 id="zend.filter.set.encrypt">
-    <title>Encrypt</title>
+    <title>Encrypt 及び Decrypt</title>
 
     <para>
-        このフィルタは、指定した設定で任意の文字列を暗号化します。
-        暗号化の際に、アダプタを使用します。実際には、<acronym>PHP</acronym> の
-        <classname>Mcrypt</classname> および <classname>OpenSSL</classname>
-        拡張モジュール用のアダプタを使用します。
+        これらのフィルタにより、与えられた文字列を暗号化したり復号化できます。
+        したがって、それらはアダプタを利用します。
+        実際には、<acronym>PHP</acronym> 由来の <classname>Mcrypt</classname>
+        および <classname>OpenSSL</classname> エクステンション用のアダプタを使用します。
     </para>
 
-    <para>
-        これら 2 つの暗号化手法はまったく異なる方式なので、
-        アダプタの使用法もそれぞれ異なります。
-        フィルタを初期化する際に、どのアダプタを使うかを選ばなければなりません。
-    </para>
-
-    <programlisting language="php"><![CDATA[
-// Mcrypt アダプタを使用します
-$filter1 = new Zend_Filter_Encrypt(array('adapter' => 'mcrypt'));
-
-// OpenSSL アダプタを使用します
-$filter2 = new Zend_Filter_Encrypt(array('adapter' => 'openssl'));
-]]></programlisting>
-
-    <para>
-        別のアダプタを設定するために <methodname>setAdapter()</methodname>
-        を使用することもできます。また <methodname>getAdapter()</methodname>
-        メソッドで、実際に設定されているアダプタを取得できます。
-    </para>
-
-    <programlisting language="php"><![CDATA[
-// Mcrypt アダプタを使用します
-$filter = new Zend_Filter_Encrypt();
-$filter->setAdapter('openssl');
-]]></programlisting>
+    <sect3 id="zend.filter.set.encrypt.options">
+        <title>Zend_Filter_Encrypt および Zend_Filter_Decrypt でサポートされるオプション</title>
 
-    <note>
         <para>
-            <property>adapter</property> オプションを指定しなかったり setAdapter
-            を使用しなかったりした場合は、デフォルトで
-            <classname>Mcrypt</classname> アダプタを使用します。
-        </para>
-    </note>
-
-    <sect3 id="zend.filter.set.encrypt.mcrypt">
-        <title>Mcrypt での暗号化</title>
-
-        <para>
-            <classname>Mcrypt</classname> 拡張モジュールをインストールすると、
-            <classname>Mcrypt</classname> アダプタが使えるようになります。
-            このアダプタは、初期化時のオプションとして以下をサポートしています。
+            <classname>Zend_Filter_Encrypt</classname> および
+            <classname>Zend_Filter_Decrypt</classname> では、下記のオプションがサポートされます。
         </para>
 
         <itemizedlist>
             <listitem>
                 <para>
-                    <emphasis>key</emphasis>: 暗号化用の鍵。
-                    入力を暗号化する際に使用します。
-                    復号する際にも同じ鍵が必要です。
+                    <emphasis><property>adapter</property></emphasis>:
+                    使用する暗号化アダプタを設定します。
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <emphasis>algorithm</emphasis>: 使用するアルゴリズム。
-                    <ulink url="http://php.net/mcrypt">PHP マニュアルの mcrypt のページ</ulink>
+                    <emphasis><property>algorithm</property></emphasis>:
+                    <classname>MCrypt</classname> のみ。
+                    使用するアルゴリズム
+                    <ulink url="http://php.net/mcrypt">PHP の mcrypt 暗号</ulink>
                     であげられている暗号化アルゴリズムのいずれかでなければなりません。
-                    省略した場合のデフォルトは 'blowfish' です。
+                    省略した場合のデフォルトは <property>blowfish</property> です。
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <emphasis>algorithm_directory</emphasis>:
+                    <emphasis><property>algorithm_directory</property></emphasis>:
+                    <classname>MCrypt</classname> のみ。
                     アルゴリズムが存在するディレクトリ。
-                    省略した場合のデフォルトは、mcrypt
-                    拡張モジュールで設定されているパスです。
+                    省略した場合のデフォルトは、mcrypt エクステンション内に設定されたパスです。
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <emphasis><property>compression</property></emphasis>:
+                    暗号化した値を圧縮するかどうか。既定値は圧縮なし。
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <emphasis>mode</emphasis>: 使用する暗号化モード。
-                    <ulink url="http://php.net/mcrypt">PHP マニュアルの mcrypt のページ</ulink>
+                    <emphasis><property>envelope</property></emphasis>:
+                    <classname>OpenSSL</classname> のみ。
+                    コンテンツを暗号化した人から受け取った、
+                    暗号化されたエンベロープ鍵。
+                    鍵ファイルのパスとファイル名を指定するか、
+                    あるいは単に鍵ファイルの内容そのものを指定することもできます。
+                    <property>package</property> オプションが設定された場合、
+                    このパラメータは省略できます。
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <emphasis><property>key</property></emphasis>:
+                    <classname>MCrypt</classname> のみ。
+                    暗号化用の鍵。
+                    入力を暗号化する際に使用します。
+                    復号する際にも同じ鍵が必要です。
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <emphasis><property>mode</property></emphasis>:
+                    <classname>MCrypt</classname> のみ。
+                    使用する暗号化モード。
+                    <ulink url="http://php.net/mcrypt">PHP の mcrypt 暗号</ulink>
                     であげられているモードのいずれかでなければなりません。
                     省略した場合のデフォルトは 'cbc' です。
                 </para>
@@ -92,41 +90,112 @@ $filter->setAdapter('openssl');
 
             <listitem>
                 <para>
-                    <emphasis>mode_directory</emphasis>:
+                    <emphasis><property>mode_directory</property></emphasis>:
+                    <classname>MCrypt</classname> のみ。
                     モードが存在するディレクトリ。
                     省略した場合のデフォルトは、<classname>Mcrypt</classname>
                     拡張モジュールで設定されているパスです。
                 </para>
             </listitem>
 
+            <!-- TODO : to be tranlated -->
             <listitem>
                 <para>
-                    <emphasis>vector</emphasis>: 使用する初期化ベクトル。
-                    省略した場合はランダムなベクトルとなります。
+                    <emphasis><property>package</property></emphasis>:
+                    <classname>OpenSSL</classname> のみ。
+                    If the envelope key should be packed with the
+                    encrypted value. Default is <constant>FALSE</constant>.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <emphasis><property>private</property></emphasis>:
+                    <classname>OpenSSL</classname> のみ。
+                    コンテンツの暗号化に使用する、あなたの秘密鍵。
+                    鍵ファイルのパスとファイル名を指定するか、
+                    あるいは単に鍵ファイルの内容そのものを指定することもできます。
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <emphasis><property>public</property></emphasis>:
+                    <classname>OpenSSL</classname> のみ。
+                    暗号化したコンテンツを渡したい相手の公開鍵。
+                    複数の公開鍵を指定するには、配列を使用します。
+                    鍵ファイルのパスとファイル名を指定するか、
+                    あるいは単に鍵ファイルの内容そのものを指定することもできます。
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <emphasis>salt</emphasis>: キーを salt 値として使用するかどうか。
+                    <emphasis><property>salt</property></emphasis>:
+                    <classname>MCrypt</classname> のみ。
+                    キーを salt 値として使用するかどうか。
                     使用すると、暗号化に使用するキー自体も暗号化されます。
                     デフォルトは <constant>FALSE</constant> です。
                 </para>
             </listitem>
 
-            <!-- TODO : to be translated -->
             <listitem>
                 <para>
-                    <emphasis>compression</emphasis>: If the encrypted value should be compressed.
-                    Default is no compression. For details take a look into <link
-                        linkend="zend.filter.set.encrypt.openssl.compressed">compression for
-                        Openssl</link>.
+                    <emphasis><property>vector</property></emphasis>:
+                    <classname>MCrypt</classname> のみ。
+                    使用する初期化ベクトル。
+                    省略した場合はランダムなベクトルとなります。
                 </para>
             </listitem>
         </itemizedlist>
+    </sect3>
+
+    <sect3 id="zend.filter.set.encrypt.adapterusage">
+        <title>アダプタの使用法</title>
 
         <para>
-            配列ではなく文字列を指定した場合は、その文字列を鍵として使用します。
+            これら 2 つの暗号化手法はまったく異なる方式なので、
+            アダプタの使用法もそれぞれ異なります。
+            フィルタを初期化する際に、どのアダプタを使うかを選ばなければなりません。
+        </para>
+
+        <programlisting language="php"><![CDATA[
+// Mcrypt アダプタを使用します
+$filter1 = new Zend_Filter_Encrypt(array('adapter' => 'mcrypt'));
+
+// OpenSSL アダプタを使用します
+$filter2 = new Zend_Filter_Encrypt(array('adapter' => 'openssl'));
+]]></programlisting>
+
+        <para>
+            別のアダプタを設定するために <methodname>setAdapter()</methodname>
+            を使用することもできます。また <methodname>getAdapter()</methodname>
+            メソッドで、実際に設定されているアダプタを取得できます。
+        </para>
+
+        <programlisting language="php"><![CDATA[
+// Mcrypt アダプタを使用します
+$filter = new Zend_Filter_Encrypt();
+$filter->setAdapter('openssl');
+]]></programlisting>
+
+        <note>
+            <para>
+                <property>adapter</property> オプションを指定しなかったり <methodname>setAdapter()</methodname>
+                を使用しなかったりした場合は、デフォルトで
+                <classname>Mcrypt</classname> アダプタを使用します。
+            </para>
+        </note>
+    </sect3>
+
+    <sect3 id="zend.filter.set.encrypt.mcrypt">
+        <title>Mcrypt での暗号化</title>
+
+        <para>
+            <classname>Mcrypt</classname> 拡張モジュールをインストールすると、
+            <classname>Mcrypt</classname> アダプタが使えるようになります。
+            もしオプション配列の代わりに文字列を与えると、
+            文字列がキーとして使われます。
         </para>
 
         <para>
@@ -179,50 +248,56 @@ print $encrypted;
 ]]></programlisting>
     </sect3>
 
-    <sect3 id="zend.filter.set.encrypt.openssl">
-        <title>OpenSSL での暗号化</title>
+    <sect3 id="zend.filter.set.encrypt.mcryptdecrypt">
+        <title>Mcrypt の復号</title>
+        <para>
+            <classname>Mcrypt</classname> で暗号化したコンテンツを復号するには、
+            暗号化を行った際に指定したオプションが必要です。
+        </para>
 
         <para>
-            <classname>OpenSSL</classname> 拡張モジュールをインストールすると、
-            <classname>OpenSSL</classname> アダプタが使えるようになります。
-            このアダプタは、初期化時のオプションとして以下をサポートしています。
+            ここでひとつ暗号化時との大きな違いがあります。
+            暗号化の際にベクトルを指定しなかった場合は、コンテンツを暗号化した後で
+            フィルタの <methodname>getVector()</methodname> メソッドを使用してベクトルを取得する必要があります。
+            正しいベクトルがなければ、コンテンツを復号することはできません。
         </para>
 
-        <itemizedlist>
-            <listitem>
-                <para>
-                    <emphasis>public</emphasis>: 暗号化したコンテンツを渡したい相手の公開鍵。
-                    複数の公開鍵を指定するには、配列を使用します。
-                    鍵ファイルのパスとファイル名を指定するか、
-                    あるいは単に鍵ファイルの内容そのものを指定することもできます。
-                </para>
-            </listitem>
+        <para>
+            オプションを指定しさえすれば、復号は暗号化と同じくらい単純なことです。
+        </para>
 
-            <listitem>
-                <para>
-                    <emphasis>private</emphasis>: コンテンツの暗号化に使用する、あなたの秘密鍵。
-                    鍵ファイルのパスとファイル名を指定するか、
-                    あるいは単に鍵ファイルの内容そのものを指定することもできます。
-                </para>
-            </listitem>
+        <programlisting language="php"><![CDATA[
+// デフォルト設定の blowfish を使用します
+$filter = new Zend_Filter_Decrypt('myencryptionkey');
 
-            <!-- TODO : to be translated -->
-            <listitem>
-                <para>
-                    <emphasis>compression</emphasis>: If the encrypted value should be compressed.
-                    Default is no compression.
-                </para>
-            </listitem>
+// コンテンツの暗号化用ベクトルを設定します
+$filter->setVector('myvector');
 
-            <listitem>
-                <para>
-                    <emphasis>package</emphasis>: If the envelope key should be packed with the
-                    encrypted value. Default is <constant>FALSE</constant>.
-                </para>
-            </listitem>
-        </itemizedlist>
+$decrypted = $filter->filter('encoded_text_normally_unreadable');
+print $decrypted;
+]]></programlisting>
+
+        <note>
+            <para>
+                mcrypt 拡張モジュールが使用できない場合は例外が発生することに注意しましょう。
+            </para>
+        </note>
+
+        <note>
+            <para>
+                また、インスタンス作成時あるいは <methodname>setEncryption()</methodname>
+                をコールした際にすべての設定がチェックされることにも注意しましょう。
+                設定内容に問題があることを mcrypt が検知すると、例外がスローされます。
+            </para>
+        </note>
+    </sect3>
+
+    <sect3 id="zend.filter.set.encrypt.openssl">
+        <title>OpenSSL での暗号化</title>
 
         <para>
+            <classname>OpenSSL</classname> 拡張モジュールをインストールすると、
+            <classname>OpenSSL</classname> アダプタが使えるようになります。
             後から公開鍵を取得あるいは設定するには、<methodname>getPublicKey()</methodname>
             および <methodname>setPublicKey()</methodname> メソッドを使用します。
             秘密鍵についても、<methodname>getPrivateKey()</methodname> および <methodname>setPrivateKey()</methodname>
@@ -307,6 +382,7 @@ print $encrypted;
 // 復号の方法は Decrypt フィルタを参照ください
 ]]></programlisting>
 
+        <!-- TODO : to be translated -->
         <sect4 id="zend.filter.set.encrypt.openssl.simplified">
             <title>Simplified usage with Openssl</title>
 
@@ -321,7 +397,7 @@ print $encrypted;
             </para>
 
             <programlisting language="php"><![CDATA[
-// Use openssl and provide a private key
+// openssl を使用し、秘密鍵を指定します
 $filter = new Zend_Filter_Encrypt(array(
     'adapter' => 'openssl',
     'private' => '/path/to/mykey/private.pem',
@@ -332,7 +408,7 @@ $filter = new Zend_Filter_Encrypt(array(
 $encrypted = $filter->filter('text_to_be_encoded');
 print $encrypted;
 
-// For decryption look at the Decrypt filter
+// 復号の方法は Decrypt フィルタを参照ください
 ]]></programlisting>
 
             <para>
@@ -389,8 +465,80 @@ $filter2 = new Zend_Filter_Encrypt(array(
             </note>
         </sect4>
     </sect3>
-</sect2>
 
+    <sect3 id="zend.filter.set.encrypt.openssldecrypt">
+        <title>OpenSSL での復号</title>
+
+        <para>
+            <classname>OpenSSL</classname> での復号は、暗号化と同様にシンプルです。
+            しかし、コンテンツを暗号化した人からすべてのデータを受け取る必要があります。
+            下記の例をご覧ください。
+        </para>
+
+        <programlisting language="php"><![CDATA[
+// openssl を使用し、秘密鍵を指定します
+$filter = new Zend_Filter_Decrypt(array(
+    'adapter' => 'openssl',
+    'private' => '/path/to/mykey/private.pem'
+));
+
+// もちろん、初期化時にエンベロープ鍵を指定することもできます
+$filter->setEnvelopeKey(array(
+    '/key/from/encoder/first.pem',
+    '/key/from/encoder/second.pem'
+));
+]]></programlisting>
+
+        <note>
+            <para>
+                <classname>OpenSSL</classname> アダプタは、正しい鍵を渡さないと動作しないことに注意しましょう。
+            </para>
+        </note>
+
+        <para>
+            オプションで、パスフレーズを渡さなければ鍵を復号できないようにすることもできます。
+            そのために使用するのが <methodname>setPassphrase()</methodname> メソッドです。
+        </para>
+
+        <programlisting language="php"><![CDATA[
+// openssl を使用し、秘密鍵を指定します
+$filter = new Zend_Filter_Decrypt(array(
+    'adapter' => 'openssl',
+    'private' => '/path/to/mykey/private.pem'
+));
+
+// もちろん、初期化時にエンベロープ鍵を指定することもできます
+$filter->setEnvelopeKey(array(
+    '/key/from/encoder/first.pem',
+    '/key/from/encoder/second.pem'
+));
+$filter->setPassphrase('mypassphrase');
+]]></programlisting>
+
+        <para>
+            最後に、コンテンツを復号します。
+            暗号化したコンテンツの復号を行う完全な例は、このようになります。
+        </para>
+
+        <programlisting language="php"><![CDATA[
+// openssl を使用し、秘密鍵を指定します
+$filter = new Zend_Filter_Decrypt(array(
+    'adapter' => 'openssl',
+    'private' => '/path/to/mykey/private.pem'
+));
+
+// もちろん、初期化時にエンベロープ鍵を指定することもできます
+$filter->setEnvelopeKey(array(
+    '/key/from/encoder/first.pem',
+    '/key/from/encoder/second.pem'
+));
+$filter->setPassphrase('mypassphrase');
+
+$decrypted = $filter->filter('encoded_text_normally_unreadable');
+print $decrypted;
+]]></programlisting>
+    </sect3>
+</sect2>
 <!--
 vim:se ts=4 sw=4 et:
--->
+-->

+ 185 - 84
documentation/manual/ja/module_specs/Zend_Filter-LocalizedToNormalized.xml

@@ -1,80 +1,120 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!-- Reviewed: no -->
-<!-- EN-Revision: 20774 -->
+<!-- EN-Revision: 22821 -->
 <sect2 id="zend.filter.set.localizedtonormalized">
+    <title>LocalizedToNormalized および NormalizedToLocalized</title>
 
-    <title>LocalizedToNormalized</title>
-
+    <!-- TODO : to be translated -->
     <para>
-        このフィルタは与えられたローカライズされた入力をその正規化された表現に変換します。
-        バックグラウンド<classname>Zend_Locale</classname>でこの変換を行うために使います。
+        These two filters can change given localized input to it's normalized representation and
+        reverse. They use in Background <classname>Zend_Locale</classname> to do this transformation
+        for you.
     </para>
 
-    <para>
-        このおかげで、ユーザーがユーザー固有の言語表記で情報を入力でき、
-        さらに例えば正規化された値をデータベースに保存できるようになります。
-    </para>
+    <sect3 id="zend.filter.set.localizedtonormalized.options">
+        <title>
+            Zend_Filter_LocalizedToNormalized および
+            Zend_Filter_NormalizedToLocalized でサポートされるオプション
+        </title>
 
-    <note>
         <para>
-            正規化と翻訳とは同一ではないことに注意してください。
-            このフィルタでは、月や日の名前で期待するような、
-            ある言語から別のものへの文字列の翻訳は行えません。
+            <classname>Zend_Filter_LocalizedToNormalized</classname> および
+            <classname>Zend_Filter_NormalizedToLocalized</classname> では、下記のオプションがサポートされます。
         </para>
-    </note>
 
-    <para>
-        下記の入力型が正規化されます。
-    </para>
+        <itemizedlist>
+            <listitem>
+                <para>
+                    <emphasis><property>date_format</property></emphasis>: 正規化で使う日付形式や、
+                    地域化された日付形式を検出する日付形式を設定します。
+                </para>
+            </listitem>
 
-    <itemizedlist>
-        <listitem>
-            <para>
-                <emphasis>integer</emphasis>: ローカライズされた整数値。英語表記に正規化されます。
-            </para>
-        </listitem>
+            <listitem>
+                <para>
+                    <emphasis><property>locale</property></emphasis>: 正規化で使うロケールや、
+                    地域化された形式を検出するロケールを設定します。
+                </para>
+            </listitem>
 
-        <listitem>
-            <para>
-                <emphasis>float</emphasis>: ローカライズされたフロート値。英語表記に正規化されます。
-            </para>
-        </listitem>
+            <listitem>
+                <para>
+                    <emphasis><property>precision</property></emphasis>: 数値変換で使う精度を設定します。
+                </para>
+            </listitem>
+        </itemizedlist>
+    </sect3>
 
-        <listitem>
-            <para>
-                <emphasis>numbers</emphasis>: 実数のようなその他の数値。英語表記に正規化されます。
-            </para>
-        </listitem>
+    <sect3 id="zend.filter.set.localizedtonormalized.workflow">
+        <title>ワークフロー</title>
 
-        <listitem>
-            <para>
-                <emphasis>time</emphasis>: 時刻値。連想配列に正規化されます。
-            </para>
-        </listitem>
+        <para>
+            正規化により、ユーザーがユーザー固有の言語表記で情報を入力でき、
+            さらに例えば正規化された値をデータベースに保存できるようになります。
+            一方で地域化により、
+            保管された正規化された値をローカルな流儀でユーザーに提示できるようになります。
+        </para>
 
-        <listitem>
+        <note>
             <para>
-                <emphasis>date</emphasis>: 日付値。連想配列に正規化されます。
+                正規化および地域化と翻訳とは同一ではないことに注意してください。
+                これらのフィルタでは、月や日の名前で期待するような、
+                ある言語から別のものへの文字列の翻訳は行えません。
             </para>
-        </listitem>
-    </itemizedlist>
+        </note>
 
-    <para>
-        その他の入力はいずれも変更無しにそのまま返されます。
-    </para>
+        <para>
+            下記の入力型が正規化および地域化されます。
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>
+                    <emphasis>integer</emphasis>: 整数値。正規化では英語表記を返します。
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <emphasis>float</emphasis>: フロート値。正規化では英語表記を返します。
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <emphasis>numbers</emphasis>: 実数のようなその他の数値。正規化では英語表記を返します。
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <emphasis>time</emphasis>: 時刻値。連想配列に正規化されます。
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <emphasis>date</emphasis>: 日付値。連想配列に正規化されます。
+                </para>
+            </listitem>
+        </itemizedlist>
 
-    <note>
         <para>
-            正規化された出力が常に文字列として与えられることに注意するべきです。
-            これ以外の場合には、
-            環境は正規化された出力から、
-            環境で設定されたロケールで使われる表記法に
-            自動的に変換します。
+            その他の入力はいずれも変更無しにそのまま返されます。
         </para>
-    </note>
 
-    <sect3 id="zend.filter.set.localizedtonormalized.numbers">
+        <note>
+            <para>
+                正規化された出力が常に文字列として与えられることに注意するべきです。
+                これ以外の場合には、
+                環境は正規化された出力から、
+                環境で設定されたロケールで使われる表記法に
+                自動的に変換します。
+            </para>
+        </note>
+    </sect3>
 
+    <sect3 id="zend.filter.set.localizedtonormalized.numbersnormal">
         <title>数値の正規化</title>
 
         <para>
@@ -104,34 +144,8 @@ $filter->filter('123.456,78');
         <para>
             正規化した数がどのようになるべきか、コントロールすることもできます。
             このために<classname>Zend_Locale_Format</classname>でも使用されるオプションを
-            全て与えられます。
-            最も一般的なのは下記です。
-        </para>
-
-        <itemizedlist>
-            <listitem>
-                <para>
-                    <emphasis>date_format</emphasis>
-                </para>
-            </listitem>
-
-            <listitem>
-                <para>
-                    <emphasis>locale</emphasis>
-                </para>
-            </listitem>
-
-            <listitem>
-                <para>
-                    <emphasis>precision</emphasis>
-                </para>
-            </listitem>
-        </itemizedlist>
-
-        <para>
-            それらのオプションの利用法について詳しくは、
-            <link linkend="zend.locale.parsing">Zend_Locale</link>
-            をご覧下さい。
+            全て与えられます。利用可能なオプションについて詳しくは、この
+            <link linkend="zend.locale.parsing">Zend_Locale の章</link>をご覧ください。
         </para>
 
         <para>
@@ -148,11 +162,9 @@ $filter->filter('123.456');
 $filter->filter('123.456,78901');
 //値 '123456.79' を返します。
 ]]></programlisting>
-
     </sect3>
 
     <sect3 id="zend.filter.set.localizedtonormalized.dates">
-
         <title>日時の正規化</title>
 
         <para>
@@ -191,8 +203,97 @@ $filter->filter('11:22:33');
 ]]></programlisting>
     </sect3>
 
-</sect2>
+    <sect3 id="zend.filter.set.localizedtonormalized.numberslocal">
+        <title>数値の地域化</title>
 
+        <para>
+            整数、フロートまたは実数のようなあらゆる数が地域化されます。
+            指数表記の数値は、実はこのフィルタで扱えないので注意してください。
+        </para>
+
+        <para>
+            数値についての詳しい地域化方法
+        </para>
+
+        <programlisting language="php"><![CDATA[
+//フィルタを初期化
+$filter = new Zend_Filter_NormalizedToLocalized();
+$filter->filter(123456.78);
+//値 '123.456,78' を返します。
+]]></programlisting>
+
+        <para>
+            アプリケーション全体のロケールとしてロケール 'de' を設定したつもりになりましょう。
+            <classname>Zend_Filter_NormalizedToLocalized</classname>は設定されたロケールを受け取って、
+            どの種類の出力をあなたが受け取りたいのか検出するために、それを使います。
+            われわれの例ではそれは精度を持つ値でした。
+            そこで、この値を文字列として地域化した表現をフィルタは返します。
+        </para>
+
+        <para>
+            地域化した数がどのようになるべきか、コントロールすることもできます。
+            このために<classname>Zend_Locale_Format</classname>でも使用されるオプションを
+            全て与えられます。
+            これらのオプションの使い方について詳しくは、この
+            <link linkend="zend.locale.parsing">Zend_Locale の章</link> をご覧ください。
+        </para>
+
+        <para>
+            下記はオプションの動作方法が分かるように精度を定義した例です。
+        </para>
+
+        <programlisting language="php"><![CDATA[
+//数値フィルタ
+$filter = new Zend_Filter_NormalizedToLocalized(array('precision' => 2));
+
+$filter->filter(123456);
+//値 '123.456,00' を返します。
+
+$filter->filter(123456.78901);
+//値 '123.456,79' を返します。
+]]></programlisting>
+
+    </sect3>
+
+    <sect3 id="zend.filter.set.normalizedtolocalized.dates">
+        <title>日時の地域化</title>
+
+        <para>
+            日付や時刻の値を正規化したものもまた、地域化できます。
+            与えられた日付および時刻は全て、設定されたロケールで定義された形式で
+            文字列として返されます。
+        </para>
+
+        <programlisting language="php"><![CDATA[
+//フィルタを初期化
+$filter = new Zend_Filter_NormalizedToLocalized();
+$filter->filter(array('day' => '12', 'month' => '04', 'year' => '2009');
+// '12.04.2009' を返します。
+]]></programlisting>
+
+        <para>
+            ふたたびロケール 'de' を設定したつもりになりましょう。
+            そこで、入力は自動的に日付として検出され、
+            ロケール 'de' で定義された形式で返されます。
+        </para>
+
+        <para>
+            もちろん、日付の入力値をどのようにするか
+            <emphasis>date_format</emphasis>や<emphasis>locale</emphasis>オプションで
+            コントロールすることもできます。
+        </para>
+
+        <programlisting language="php"><![CDATA[
+//日付フィルタ
+$filter = new Zend_Filter_LocalizedToNormalized(
+    array('date_format' => 'ss:mm:HH')
+);
+
+$filter->filter(array('hour' => '33', 'minute' => '22', 'second' => '11'));
+// '11:22:33' を返します。
+]]></programlisting>
+    </sect3>
+</sect2>
 <!--
 vim:se ts=4 sw=4 et:
 -->

+ 51 - 22
documentation/manual/ja/module_specs/Zend_Filter-RealPath.xml

@@ -1,42 +1,71 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!-- Reviewed: no -->
-<!-- EN-Revision: 21129 -->
+<!-- EN-Revision: 22821 -->
 <sect2 id="zend.filter.set.realpath">
     <title>RealPath</title>
 
     <para>
         このフィルタは与えられたリンクとパス名を解決して、正規化された絶対パス名を返します。
-        '<filename>/./</filename>' や '<filename>/../</filename>' への参照、
-        及び、入力パスの余分な '<filename>/</filename>' 記号は取り除かれます。
-        結果のパスにはいかなるシンボリックリンクも無く、
-        '<filename>/./</filename>' や '<filename>/../</filename>' 文字もありません。
     </para>
 
-    <para>
-        たとえばファイルが存在しない場合、
-        <classname>Zend_Filter_RealPath</classname>は失敗すると<constant>FALSE</constant>を返します。
-        もし最後のパスのコンポーネントだけが存在しない場合、
-        <acronym>BSD</acronym> システムでは<classname>Zend_Filter_RealPath</classname>は失敗しますが、
-        他のシステムでは<constant>FALSE</constant>を返します。
-    </para>
+    <sect3 id="zend.filter.set.realpath.options">
+        <title>Zend_Filter_RealPath でサポートされるオプション</title>
+
+        <para>
+            <classname>Zend_Filter_RealPath</classname> では、下記のオプションがサポートされます。
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>
+                    <emphasis><property>exists</property></emphasis>:
+                    このオプションの既定値は <constant>TRUE</constant> で、
+                    与えられたパスが本当に存在するかどうかチェックします。
+                </para>
+            </listitem>
+        </itemizedlist>
+    </sect3>
+
+    <sect3 id="zend.filter.set.realpath.basic">
+        <title>基本の使い方</title>
+
+        <para>
+            与えられたパス名のリンク全てで完全パスが返されます。
+            '<filename>/./</filename>' や '<filename>/../</filename>' への参照、
+            及び、入力パスの余分な '<filename>/</filename>' 記号は取り除かれます。
+            結果のパスにはいかなるシンボリックリンクも無く、
+            '<filename>/./</filename>' や '<filename>/../</filename>' 文字もありません。
+        </para>
 
-    <programlisting language="php"><![CDATA[
+        <para>
+            たとえばファイルが存在しない場合、
+            <classname>Zend_Filter_RealPath</classname>は失敗すると<constant>FALSE</constant>を返します。
+            もし最後のパスのコンポーネントだけが存在しない場合、
+            <acronym>BSD</acronym> システムでは<classname>Zend_Filter_RealPath</classname>は失敗しますが、
+            他のシステムでは<constant>FALSE</constant>を返します。
+        </para>
+
+        <programlisting language="php"><![CDATA[
 $filter = new Zend_Filter_RealPath();
 $path   = '/www/var/path/../../mypath';
 $filtered = $filter->filter($path);
 
 // '/www/mypath' を返します。
 ]]></programlisting>
+    </sect3>
 
-    <para>
-        それらが存在しないとき、
-        たとえば、生成したいパスのために実際のパスを取得したいとき、
-        パスを得るためにしばしば役に立ちます。
-        初期化で<constant>FALSE</constant>を渡すこともできますし、
-        それを設定するために<methodname>setExists()</methodname>を使うこともできます。
-    </para>
+    <sect3 id="zend.filter.set.realpath.exists">
+        <title>存在しないパス</title>
 
-    <programlisting language="php"><![CDATA[
+        <para>
+            それらが存在しないとき、
+            たとえば、生成したいパスのために実際のパスを取得したいとき、
+            パスを得るためにしばしば役に立ちます。
+            初期化で<constant>FALSE</constant>を渡すこともできますし、
+            それを設定するために<methodname>setExists()</methodname>を使うこともできます。
+        </para>
+
+        <programlisting language="php"><![CDATA[
 $filter = new Zend_Filter_RealPath(false);
 $path   = '/www/var/path/../../non/existing/path';
 $filtered = $filter->filter($path);
@@ -44,5 +73,5 @@ $filtered = $filter->filter($path);
 // file_exists または realpath が false を返すときでも
 // '/www/non/existing/path' を返します。
 ]]></programlisting>
-
+    </sect3>
 </sect2>

+ 10 - 10
documentation/manual/ja/module_specs/Zend_Locale-Functions.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!-- Reviewed: no -->
-<!-- EN-Revision: 21864 -->
+<!-- EN-Revision: 22433 -->
 <sect1 id="zend.locale.functions">
 
     <title>Zend_Locale の使用法</title>
@@ -646,9 +646,9 @@ print Zend_Locale::getTranslation('de', 'language', 'zh');
                     <row>
                         <entry><emphasis>TerritoryToLanguage</emphasis></entry>
                         <entry>
-                          ある言語を使用する国の一覧を返します。
-                          国コードが配列のキー、そして言語コードが配列の値となります。
-                          言語が複数の国で用いられる場合は、
+                          言語及び話される国の一覧を返します。
+                          言語コードが配列のキー、そして国コードが配列の値となります。
+                          ある言語が複数の国で用いられる場合は、
                           空白で区切った形式になります。
                         </entry>
                     </row>
@@ -657,7 +657,7 @@ print Zend_Locale::getTranslation('de', 'language', 'zh');
                         <entry>
                           国と、その国で話されている言語の一覧を返します。
                           国コードが配列のキー、そして言語コードが配列の値となります。
-                          領域が複数の言語を使用する場合は、
+                          ある領域で複数の言語が話される場合は、
                           空白で区切った形式になります。
                         </entry>
                     </row>
@@ -1277,18 +1277,18 @@ print Zend_Locale::getTranslation('de', 'language', 'zh');
                           指定した言語が用いられている領域を返します。
                           言語は <acronym>ISO</acronym> 言語コードで指定する必要があります。
                           たとえば英語は 'en' となります。
-                          その言語が複数の領域で用いられる場合は、
-                          空白で区切った形式になります。
+                          指定された言語が複数の領域で話される場合は、
+                          領域は空白で区切った形式になります。
                         </entry>
                     </row>
                     <row>
                         <entry><emphasis>LanguageToTerritory</emphasis></entry>
                         <entry>
-                          指定した領域で用いられている言語の一覧を返します。
+                          指定した領域で話される言語の一覧を返します。
                           領域は <constant>ISO3166</constant> 形式のコードで指定する必要があります。
                           たとえばイタリアは 'IT' となります。
-                          その言語が複数の領域で用いられる場合は、
-                          空白で区切った形式になります。
+                          指定された領域で複数の言語が話される場合は、
+                          言語は空白で区切った形式になります。
                         </entry>
                     </row>
                     <row>