0

変数を smarty オブジェクトに割り当てる前に、smarty (3) テンプレート ファイルからすべての使用変数を取得する方法はありますか?

たとえば、次のテンプレート ファイルがあります。

Hello {$user.firstname},<br />
You are active in the following groups:<br />
{foreach from=$user.groups item=group}
   - {$group.name}<br />
{/foreach}
<br />
The city you live in is: {$city}

今私が尋ねる理由は、すべてのユーザー情報を取得する代わりに、smarty で使用されている変数に応じてクエリを作成したいからです。

とにかく次のようなことをすることはありますか:

$smarty = new smarty;

$result = $smarty->getVariablesFromTemplate('index.tpl');

print_r($result);

/* outputs:
array(
   'user' => array(
      'firstname' => true,
      'groups' => array(
         'name' => true
      ),
      'city' => true
   )
);
*/
4

1 に答える 1

0

私はあなたについてはわかりませんが、次のコードで SQL(を使用して)smartyに割り当てられたテンプレート変数にアクセスできます$smarty->assign('var', 'value')

$tpl_vars = $smarty->_tpl_vars;
于 2013-04-06T14:17:17.407 に答える