string(16) "123a " -6ren">
gpt4 book ai didi

PHP 组数组数据 - 品牌、型号、SKU

转载 作者:行者123 更新时间:2023-11-29 13:08:38 27 4
gpt4 key购买 nike

我正在使用 mysql 查询返回适合 php 中某些汽车的产品数组,如下所示;

array { 

[0]=> array(3) {
["sku"]=> string(16) "123a "
["make"]=> string(20) "Ford"
["model"]=> string(25) "Escort"
}

[1]=> array(3) {
["sku"]=> string(16) "123b"
["make"]=> string(20) "Ford"
["model"]=> string(25) "Escort"
}

[2]=> array(3) {
["sku"]=> string(16) "123c"
["make"]=> string(20) "Ford"
["model"]=> string(25) "Focus"
}

[3]=> array(3) {
["sku"]=> string(16) "123d"
["make"]=> string(20) "Alfa Romeo"
["model"]=> string(25) "159"
}

[4]=> array(3) {
["sku"]=> string(16) "123e"
["make"]=> string(20) "Alfa Romeo"
["model"]=> string(25) "159"
}

}

我正在尝试练习如何使用 foreach 循环来遍历数据并最终得到一个新分组/嵌套的数组,该数组将沿着以下行:

[Ford]=>
{["model"]=>"Escort" ["skus"]=>("123a", "123b)}
{["model"]=>"Focus" ["skus"]=>("123c")}

["Alfa Romeo]=>
{["model"]=>"159" ["skus"]=>("123d", "123e")}

因此,我想按“品牌”对所有记录进行分组,按品牌和型号进行子分组,然后将该品牌型号组合的所有 sku 放在一起。

任何帮助将不胜感激。

最佳答案

你可以这样做(输出不会完全符合你的要求,但会更容易使用):

$output = array();
foreach ($cars as $car) {
$output[$car['make']][$car['model']][] = $car['sku'];
}

这将为您提供以下输出:

[Ford] => Array
[Escort] => Array
[0] => 123a
[1] => 123b
[Focus] => Array
[0] => 123c
[Alfa Romeo] => Array
[159] => Array
[0] => 123d
[1] => 123e

Demo

关于PHP 组数组数据 - 品牌、型号、SKU,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22376895/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com