What is Smarty?
Why use it?
Use Cases and Work Flow
Syntax Comparison
Template Inheritance
Best Practices
Crash Course
You may use the Smarty logo according to the trademark notice.
For sponsorship, advertising, news or other inquiries, contact us at:
registerFilter() — 動的にフィルタを登録する
void registerFilter(string type,
mixed callback);
この関数は、テンプレート上で動くフィルタを動的に登録します。 次のパラメータを使います。
type
にはフィルタの型を定義します。使える値は "pre"、"post"、"output" および "variable" です。
PHP 関数のコールバック function
は、次のいずれかとなります。
関数名を含んだ文字列
array(&$object, $method)
形式の配列
(&$object
はオブジェクトの参照で、
$method
はメソッド名を含む文字列)
array($class, $method)
という形式の配列
($class
はクラス名であり、
$method
はクラスのメソッド名)
選択したコールバック function
が
array(&$object, $method)
形式である場合は、
同じ $method
を持つクラスのインスタンスをひとつだけ登録できます。
そのような場合は、最後に登録されたコールバック function
のみが用いられます。
プリフィルタ は、テンプレートのソースをコンパイルする前に実行します。 プリフィルタ関数を準備する方法の詳細は テンプレート プリフィルタ を参照ください。
ポストフィルタ は、テンプレートを PHP にコンパイルした後で実行します。 ポストフィルタ関数を準備する方法の詳細は テンプレート ポストフィルタ を参照ください。
アウトプットフィルタ は、テンプレートの出力を 表示 する前に実行します。 アウトプットフィルタ関数を準備する方法の詳細は テンプレート アウトプットフィルタ を参照ください。
unregisterFilter()
、
loadFilter()
、
$autoload_filters
、
テンプレート プリフィルタ、
テンプレート ポストフィルタ、
テンプレート アウトプットフィルタ
も参照ください。