Smarty模板引擎没有运行foreach

时间:2018-01-20 11:36:20

标签: smarty smarty3 smarty2

foreach方法在smarty模板引擎中无法正常工作。你能用while循环显示它的外观吗?

// Foreach data in post array saved : add a new input in the redirection form
foreach($_SESSION['POSTDATA'] as $key => $value)
{
    if($key!='ACTION' && $key!='AES_KEYS')
    {
        $smarty->assign('postdata',array('id' => $key, 'name' => $key, 'value'  => $value));
    }
}
$_SESSION['POSTDATA'] = '';

1 个答案:

答案 0 :(得分:0)

根据您的代码,您可以尝试将其设置为正确(因为您在每次循环迭代时都会删除之前的“postdata'值”并希望排除ACTION和AES_KEYS键):

unset($_SESSION['POSTDATA']['ACTION']);
unset($_SESSION['POSTDATA']['AES_KEYS']);
$smarty->assign('postdata', $_SESSION['POSTDATA']);

然后你就可以访问你的邮箱数据了。变量分配给smarty使用:

{$postdata.yourkey}

无论如何,你可以在smarty 3中直接访问全局会话:

{$smarty.session.POSTDATA.desiredkey}

或者

{$smarty['session']['POSTDATA']['desiredkey']}