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数组。