Итерировать объект, используя SMARTY? - PullRequest
0 голосов
/ 08 июня 2018

Я пытался повторить {"username":"testuser","password":"XXXXXX"} в smarty (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 голосов
/ 22 июня 2018

Вы можете сначала попытаться преобразовать объект 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}
...