Browse Source

[DOCUMANTATION] Japanese:new Zend_Filter_Callback

git-svn-id: http://framework.zend.com/svn/framework/standard/trunk@15724 44c647ce-9c0f-0410-b52a-842ac1e357ba
yoshida@zend.co.jp 16 years ago
parent
commit
3e8af18557
1 changed files with 73 additions and 0 deletions
  1. 73 0
      documentation/manual/ja/module_specs/Zend_Filter-Callback.xml

+ 73 - 0
documentation/manual/ja/module_specs/Zend_Filter-Callback.xml

@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Reviewed: no -->
+<!-- EN-Revision: 15723 -->
+<sect2 id="zend.filter.set.callback">
+    <title>Callback</title>
+    <para>
+        このフィルタにより、<classname>Zend_Filter</classname>とともに自分自身のメソッドを使うことができます。
+        機能を果たすメソッドすでにあるとき、新しいフィルタを生成する必要はありません。
+    </para>
+
+    <para>
+        文字列を逆にするフィルタを生成したいとしましょう。
+    </para>
+
+    <programlisting language="php"><![CDATA[
+$filter = new Zend_Filter_Callback('strrev');
+
+print $filter->filter('Hello!');
+// "!olleH"を返します
+]]></programlisting>
+
+    <para>
+        おわかりのように、自分自身のフィルタを定義するために本当に簡単にコールバックを使えます。
+        メソッド(それはクラス内で定義されます)をコールバックとして配列を与えることによって使うことも可能です。
+    </para>
+
+    <programlisting language="php"><![CDATA[
+// クラスの定義
+class MyClass
+{
+    public function Reverse($param);
+}
+
+// フィルター定義
+$filter = new Zend_Filter_Callback(array('MyClass', 'Reverse'));
+print $filter->filter('Hello!');
+]]></programlisting>
+
+    <para>
+        実際に設定されているコールバックを取得するには<code>getCallback()</code>を使い、
+        他のコールバックを設定するには<code>setCallback()</code>を使います。
+    </para>
+
+    <para>
+        フィルタが実行されるとき、
+        呼ばれるメソッドに配列として与えられるデフォルト・パラメータを定義できます。
+        この配列は、フィルターされた値で結合されます。
+    </para>
+
+    <programlisting language="php"><![CDATA[
+$filter = new Zend_Filter_Callback(
+    'MyMethod',
+    array('key' => 'param1', 'key2' => 'param2')
+);
+$filter->filter(array('value' => 'Hello'));
+]]></programlisting>
+
+    <para>
+        手動で上記のメソッド定義を呼ぶと、それはこのように見えます:
+    </para>
+
+    <programlisting language="php"><![CDATA[
+$value = MyMethod('Hello', 'param1', 'param2');
+]]></programlisting>
+
+    <note>
+        <para>
+            呼ばれることができないコールバック・メソッドを定義すると、
+            例外が発生する点に注意しなければなりません。
+        </para>
+    </note>
+
+</sect2>