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 回答