Get Smarty

Donate

Paypal

Smarty Icon

You may use the Smarty logo according to the trademark notice.

Smarty Template Engine Smarty Template Engine

For sponsorship, advertising, news or other inquiries, contact us at:

Sites Using Smarty

Advertisement

コンパイラ関数プラグイン

コンパイラ関数プラグインはテンプレートのコンパイル時にのみ呼び出されます。 これらのプラグインは、PHPコードまたは時間に依存する静的コンテンツをテンプレートに含める時に便利です。 コンパイラ関数と カスタム関数 が双方とも同じ名前で登録された場合は、コンパイラ関数が優先されます。

mixed smarty_compiler_name( $tag_arg,  
  $smarty);  
string $tag_arg;
object $smarty;
 

コンパイラ関数には3つのパラメータを渡します。 これらのパラメータは、タグ内の文字列(基本的に関数名から終端デリミタまでの全ての文字列)と、 Smartyのオブジェクト、そしてテンプレートオブジェクトです。 戻り値には、コンパイルされたテンプレートに挿入されるPHPコードを返します。

Example 16.6. シンプルなコンパイラ関数プラグイン


<?php
/*
 * Smarty plugin
 * -------------------------------------------------------------
 * File:     compiler.tplheader.php
 * Type:     compiler
 * Name:     tplheader
 * Purpose:  ソースファイル名とそれがコンパイルされた時間を含む
 *           ヘッダを出力する
 * -------------------------------------------------------------
 */
function smarty_compiler_tplheader($tag_arg, $smarty)
{
    return "\necho '" . $smarty->_current_file . " compiled at " . date('Y-m-d H:M'). "';";
}
?>

この関数はテンプレートから次のように呼ばれます。


{* この関数はコンパイル時にのみ呼び出されます *}
{tplheader}

     

コンパイルされたテンプレートの結果として生じるPHPコードは次のようになります。


<?php
echo 'index.tpl compiled at 2002-02-20 20:02';
?>

     

registerPlugin() および unregisterPlugin() も参照ください。

Comments
No comments for this page.

Advertisement