PHP JSON 编码方括号

PHP JSON Encode square bracket

我有一个要编码的简单 JSON 数组。在 JSON 字符串中,我需要另一个用方括号括起来的数组。我无法弄清楚如何使内部括号变成方形。有什么建议吗?

这是我的代码

$data = [ "item" =>  ["id" => "123456", "name" => "adam"]  ];                                                                    
$data_string = json_encode($data);

这是输出

{"item":{"id":"123456","name":"adam"}}

我希望得到的

{"item":["1123","1134","1184"]}

在JSON中[]是一个数组,{}是一个对象。

数组包含有序的值列表。

一个对象包含一组无序的键/值对。

如果你想要一个数组,那么你必须提供一个有序的值列表(一个 PHP 数组)而不是一组键/值对(一个 PHP 关联数组)。


$data = [ "item" =>  ["id", "123456", "name", "adam"]  ];
$data_string = json_encode($data);

给予

{"item":["id","123456","name","adam"]}

我记得,JSON数组不能同时有键和值,至于javascript。如果您有包含键和值的 php 数组,它将被转换为 JSON 的对象,从 php 数组中删除键,您也会得到 JSON 数组。