PHPマニュアル/PEARマニュアル | ユーザフォーラムで議論/質問 | マニュアル検索 | ハイライト | ハイライトオフ | ポータル | php spot

setCallbackFunction() | JavaScript入門&応用&リファレンスなら「JavaScriptist」

  

setCallbackFunction()

setCallbackFunction() – コールバック関数を設定する

Synopsis

require_once 'HTML/Template/Sigma.php';

mixed HTML_Template_Sigma::setCallbackFunction ( string $tplFunction , mixed $callback , bool $preserveArgs = = false )

Description

コールバック関数を設定します。Sigma のテンプレートには、関数コールを含めることができます。 つまり、テンプレートの作者は、func_h1("h1 に埋め込むもの") のように特別なプレースホルダをテンプレートに追加することができるのです。 Sigma はテンプレート内のこれらのプレースホルダをパースし、 それに対応するコールバック関数を定義することができます。 コールバックは、それを含むブロックが parse() されたときに自動的にコールされます。

これらのテンプレート関数の引数には、変数プレースホルダを含めて func_translate('Hello, {username}') のようにすることができます。 しかし、ブロックや別の関数コールは含められないことに注意しましょう。

コールバックを使用して、(表示周り以外の) ロジックをテンプレートに追加してはいけません。 大量のコールバックでロジックを実装することは、車輪の再発明になってしまいます。 その代わりに、XML/XSLT やネイティブの PHP スクリプト、 あるいはその他のテンプレートエンジンの使用を考慮しましょう。

スクリプト

<?php
function h_one($arg)
{     
    return 
'<h1>' $arg '</h1>';
}  
// ...  
$tpl = new HTML_Template_Sigma(' ... ');
// ...  
$tpl->setCallbackFunction('h1''h_one');
// ...
$tpl->show()
?>

テンプレート

...
func_h1('H1 Headline')
...

Parameter

string $tplFunction

テンプレートで使用する関数名。

mixed $callback

コールバック。call_user_func_array() で使用できる任意の形式。

boolean $preserveArgs

TRUE の場合は、関数コールの前に引数内の変数置換を行いません。

Return value

成功した場合に SIGMA_OK、失敗した場合にエラーオブジェクトを返します。

Throws

Possible PEAR_Error values
エラーコード エラーメッセージ 原因 対応
SIGMA_INVALID_CALLBACK Callback does not exist $callback は既存の関数あるいはメソッドではありません スペルを調べます。また、メソッドコールバックを使用する場合はオブジェクトのインスタンスが作成されているかどうかを調べます

Note

This function can not be called statically.

忘却曲線を使ってこの関数を確実に記憶に残す

フォーラムで「setCallbackFunction()」について話す
各種マニュアル: PHPマニュアル | PEARマニュアル | Smarty(英語)マニュアル | PHP-GTKマニュアル | setCallbackFunction()」をGoogle検索
copyright © 1997-2024 PHP ドキュメント作成グループ(ライセンス). provided by php spot. マニュアル: