Array
(
[Colour] => Array
(
[Red] => Red
[Blue] => Blue
)
[Size] => Array
(
[Small] => Small
[Medium] => Medium
[Large] => Large
)
[Brand] => Array
(
[Nike] => Nike
[Adidas] => Adidas
)
)
如何获得多维数组以获得此变体输出:
Red - Small - Nike
Red - Medium - Nike
Red - Large - Nike
Red - Small - Adidas
Red - Medium - Adidas
Red - Large - Adidas
Blue - Small - Nike
Blue - Medium - Nike
Blue - Large - Nike
Blue - Small - Adidas
Blue - Medium - Adidas
Blue - Large - Adidas
答案 0 :(得分:2)
您正在寻找的是笛卡儿产品。
合并这样的值:
$data = [
'Colour' => [
'Red' => 'Red',
'Blue' => 'Blue',
],
'Size' => [
'Small' => 'Small',
'Medium' => 'Medium',
'Large' => 'Large',
],
'Brand' => [
'Nike' => 'Nike',
'Adidas' => 'Adidas',
],
];
$combined = [];
foreach ($data['Colour'] as $colour) {
foreach ($data['Brand'] as $brand) {
foreach ($data['Size'] as $size) {
$combined[] = implode(' - ', [
$colour,
$size,
$brand
]);
}
}
}
var_dump($combined);
供参考,见:
有关示例,请参阅: