我将从这样的数据库中获取结果。
array(
[0] => array(
[type] => orange,
[number] => 10,
[size] => 10c,
[weight] => 1l
)
[1] => array(
[type] => mango,
[number] => 10,
[size] => 10c,
[weight] => 1l
)
[1] => array(
[type] => apple,
[number] => 10,
[size] => 10c,
[weight] => 1l
)
[3] => array(
[type] => mango,
[number] => 10,
[size] => 10c,
[weight] => 1l
)
)
基本上,我需要将其转换为以下 JSON 格式:
"mango" : [{
"number" : "10",
"size" : "10c",
"weight" : "1l"
},
{
"number" : "12",
"size" : "14c",
"weight" : "12"
}
],
"orange" : [{
"number" : "12",
"size" : "10c",
"weight" : "1l"
},
{
"number" : "12",
"size" : "14c",
"weight" : "11"
}
],
"apple" : [{
"number" : "10",
"size" : "10c",
"weight" : "1l"
},
{
]
忽略数量、大小和重量。这些只是随机数。但是数组中的第一个元素包含 JSON 标记。这应该从数组中删除,但作为 JSON 中对象数组的标记(您可以看到)。
我知道我们可以使用循环、条件等进行编写。是否有一种智能且快速的方法可以使用现有的内置 php 函数来执行此操作,而循环和条件更少?
我想,这些是步骤:
- 根据类型过滤数组的个性。大概,3次来这里得到3个水果。哪个功能在这里有帮助?根据值过滤。或者理想的键值对。
- 你得到 3 个数组,每个数组对应一种水果。分别弹出所有数组中的类型元素。
- 循环遍历类型,并将数组放入每种类型中,以类型值作为索引。
还有其他更好的方法吗?