如何根据值“cat”以分组方式显示该数组?
我的阵列:
$options = array(
array("cat" => "Impresoras","nameProd" => "Impresora 4"),
array("cat" => "Destructoras","nameProd" => "Destructora 3"),
array("cat" => "Impresoras","nameProd" => "Impresora 8"),
array("cat" => "Destructoras","nameProd" => "Destructora 5")
);
我需要打印:
Impresoras: Impresora 4, Impresora 8
Destructoras: Destructora 3, Destructora 5
试试这个
$options = array(
array("cat" => "Impresoras","nameProd" => "Impresora 4"),
array("cat" => "Destructoras","nameProd" => "Destructora 3"),
array("cat" => "Impresoras","nameProd" => "Impresora 8"),
array("cat" => "Destructoras","nameProd" => "Destructora 5")
);
foreach ($options as $key => $value) {
$nArray[$value['cat']][] = $value['nameProd'];
}
foreach ($nArray as $key => $value) {
echo $key.":".implode(",", $value)."<br>";
}
输出
Impresoras:Impresora 4,Impresora 8
Destructoras:Destructora 3,Destructora 5
使用
cat
作为键创建一个新数组。像这样的;
$grouped_categories = array();
foreach ( $options as $option ) {
$grouped_categories[$option['cat']][] = $option['nameProd'];
}
这将输出类似的内容;
[
'Impresoras' => ['Impresora 4', 'Impresora 8']
'Destructoras' => [...]
]
如何输出该数组取决于您。
$data = [];
$options = array(
array("cat" => "Impresoras", "nameProd" => "Impresora 4"),
array("cat" => "Destructoras", "nameProd" => "Destructora 3"),
array("cat" => "Impresoras", "nameProd" => "Impresora 8"),
array("cat" => "Destructoras", "nameProd" => "Destructora 5")
);
foreach ($options as $key => $value) {
$data[$value['cat']][] = $value['nameProd'];
};