使用SMARTY迭代对象?

时间:2018-06-08 07:05:11

标签: html smarty

我一直试图在smarty中迭代{"username":"testuser","password":"XXXXXX"}(3.1.29)。我需要在面板中打印这些键和值。我不能迭代这个。

即使我尝试使用PHP数组a:2:{s:8:"username";s:6:"ubuntu";s:8:"password";s:8:"password";},我也无法迭代这个。

$json = {
           "username":"testuser",
           "password":"XXXXXX"
         }
{foreach from=$json item=key key=val} 
     Key  : {key}
     Value: {value} 
{/foreach}

有没有办法迭代这个?

我想要输出如下:

Key : testuser
Value : XXXXX

1 个答案:

答案 0 :(得分:1)

您可以先尝试将JSON对象转换为PHP数组:

$userJson = {"username":"testuser","password":"XXXXXX"}

$userArray = json_decode($userJson)

$smarty->assign("userArray", $userArray);

然后在Smarty中将是:

{foreach from=$userArray key=key item=value}
   <li>{$key}: {$value}</li>
{/foreach}