首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >php中的嵌套json数组(被转换为string)

问php中的嵌套json数组(被转换为string)
EN

Stack Overflow用户
提问于 2022-10-12 16:50:06
回答 1查看 25关注 0票数 -1
代码语言:javascript
复制
$arr = array (
  
      array(
          'type' => 'Tea', 'amount' => $expense_tea, 'desp' => $expense_tea_desc
      ),
      array(
          'type' => 'BusFare', 'amount' => $expense_bus, 'desp' => $expense_bus_desc
      ),
      array(
          'type' => 'Food', 'amount' => $expense_food, 'desp' => $expense_food_desc
      )
  );
    $myObj1->expensedetails = json_encode($arr);
$json1 = json_encode($myObj1);

描述

  1. I尝试使用php

创建嵌套的json数组。

产出:

代码语言:javascript
复制
{
    "expensedetails": {
         "[{\"type\":\"Tea\",\"amount\":\"0\",\"desp\":\"0\"},{\"type\":\"BusFare\",\"amount\":\"0\",\"desp\":\"0\"},{\"type\":\"Food\",\"amount\":\"0\",\"desp\":\"0\"}]"
      }
}

解释

  1. json已转换为字符串

。

预期产出

代码语言:javascript
复制
{
"expensedetails":
        [
    {"type":"Tea","amount":"0","desp":"0"},
    {"type":"BusFare","amount":"0","desp":"0"},
    {"type":"Food","amount":"0","desp":"0"},
    {"type":"SalaryAdvance","amount":"0","desp":"0"},
    {"type":"OT","amount":"0","desp":"0"},
    {"type":"IceFlakes","amount":"0","desp":"0"}
    ]
}

结论

  1. 我需要一个类似于上面期望的代码输出
  2. 的代码,但是当我尝试执行嵌套的json数组

时。

EN

回答 1

Stack Overflow用户

发布于 2022-10-12 16:53:43

你的问题是:

代码语言:javascript
复制
$myObj1->expensedetails = json_encode($arr);

它将expensedetails设置为已经编码为JSON的字符串。

如果您希望它是JSON中的嵌套数组,那么它需要是PHP中的嵌套数组,而不是已经编码的字符串。就这么做吧:

代码语言:javascript
复制
$myObj1->expensedetails = $arr;
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74045427

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档