我有一个简单的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数组。