Get Smarty


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

Buy cheap glasses from and save up to 80%.

Where to buy prescription glasses? is your best choice!

Where to buy discount wedding dresses and cheap smart dresses free shipping -

Shop for 2018 World Cup Football Boots Online sale at

Browse best 2018 world cup soccer cleats and shoes from



register_block() — ブロック関数プラグインを動的に登録します。


void register_block(string name,
                    mixed impl,
                    bool cacheable,
                    mixed cache_attrs);

ブロック関数プラグイン を動的に登録します。パラメータには、ブロック関数名とそれを実装する PHP のユーザー定義関数名を渡します。

PHP 関数のコールバック function は、次のいずれかとなります。

  • 関数名を含んだ文字列

  • array(&$object, $method) 形式の配列 (&$object はオブジェクトの参照で、 $method はメソッド名を含む文字列)

  • array($class, $method) という形式の配列 ($class はクラス名であり、 $method はクラスのメソッド)

cacheablecache_attrs はほとんどの場合に省略可能です。これらの正しい使用法についての詳細は、 キャッシュ可能なプラグインの出力の制御 を参照して下さい。

Example 13.22. register_block()

// 関数の宣言
function do_translation ($params, $content, &$smarty, &$repeat)
  if (isset($content)) {
    $lang = $params['lang'];
    // $content においていくつかの変換を行います
    return $translation;

// smarty に登録します
$smarty->register_block('translate', 'do_translation');



{translate lang='br'}Hello, world!{/translate}


unregister_block() および ブロック関数プラグイン のページも参照してください。

No comments for this page.
Post a Comment
All comments are moderated. Support questions are ignored, use the forums instead.
Email: (not shown)
What is 0 plus 12? (Are you human?)