php - 如何解析/解码 smarty 模板中的 JSON 对象?

标签 php smarty json smarty3

我的模板文件中有以下代码:

{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/

相关文章:

javascript - 修复联系表格 - 消息发送成功

php - 将 csv 文件上传到 mysql 数据库。 upload.php 文件中的错误

php - 不使用表单传递或发布输入值

php - 数据库查询表选择从第二行开始而不是第一行

json - R、GeoJSON 和传单

php - 在包含的 Twig 模板中覆盖 block

php - 使用 smarty 和 mysql 数据库?

Php smarty strip_tag 允许特定标签

javascript - 如何以递归方式从嵌套 JSON 中删除所有空数组 childs []

jquery - jquery中解析对象时Json解析错误?