我的模板文件中有以下代码:
{foreach from=$items item=entry}
<pre>
{$entry->nb_persons|@print_r}
</pre>
{/foreach}
输出为(json字符串):
{"ip":"12.12.12.12","date":1375616434,"cartitems":["foo:1"],"company":"dsad","FirstName":"sad","LastName":"asdsad","street":"","postcode":"","city":"","country":"Andorra","phone":"456456","fax":"","email":"sad@sad.com","comefrom":"google","request":"","message":"sadads"}
我想单独打印每个元素,例如:
{$entry->nb_persons.company}
应该给我 -> "dsad"
但这不起作用,我不确定为什么。
最佳答案
JSON 字符串就是字符串。要访问它的成员,你必须从这个字符串创建数组/对象:
{foreach from=$items item=entry}
{* create array from JSON string*}
{assign var=person value=$entry->nb_persons|json_decode:1}
<pre>
{$person.company}
</pre>
{/foreach}
关于php - 如何解析/解码 smarty 模板中的 JSON 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18042894/