<?php
$categorizedOptions = [
'category' => [
'1' => [
'name' => 'c1',
'attribute' => [
'1' => [
'name' => 'a1',
'option' => [
'1' => [
'name' => 'o1'
],
'2' => [
'name' => 'o2'
]
]
],
'2' => [
'name' => 'a2',
'option' => [
'3' => [
'name' => 'o3'
],
'4' => [
'name' => 'o4'
]
]
]
]
],
'2' => [
'name' => 'c2',
'attribute' => [
'3' => [
'name' => 'a3',
'option' => [
'5' => [
'name' => 'o5'
],
'6' => [
'name' => 'o6'
]
]
],
'4' => [
'name' => 'a4',
'option' => [
'7' => [
'name' => 'o7'
],
'8' => [
'name' => 'o8'
]
]
]
]
]
]
];
$final = [];
foreach ($categorizedOptions as $categories) {
foreach ($categories as $category => ['name' => $categoryname, 'attribute' => $attributes]) {
foreach ($attributes as $attribute => ['name' => $attributename, 'option' => $options]) {
foreach ($options as $option => ['name' => $optionname]) {
$final[] = compact(['category', 'categoryname', 'attribute', 'attributename', 'option', 'optionname']);
}
}
}
}
var_export($final);
- Output for 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.25, 8.4.1 - 8.4.12
- array (
0 =>
array (
'category' => 1,
'categoryname' => 'c1',
'attribute' => 1,
'attributename' => 'a1',
'option' => 1,
'optionname' => 'o1',
),
1 =>
array (
'category' => 1,
'categoryname' => 'c1',
'attribute' => 1,
'attributename' => 'a1',
'option' => 2,
'optionname' => 'o2',
),
2 =>
array (
'category' => 1,
'categoryname' => 'c1',
'attribute' => 2,
'attributename' => 'a2',
'option' => 3,
'optionname' => 'o3',
),
3 =>
array (
'category' => 1,
'categoryname' => 'c1',
'attribute' => 2,
'attributename' => 'a2',
'option' => 4,
'optionname' => 'o4',
),
4 =>
array (
'category' => 2,
'categoryname' => 'c2',
'attribute' => 3,
'attributename' => 'a3',
'option' => 5,
'optionname' => 'o5',
),
5 =>
array (
'category' => 2,
'categoryname' => 'c2',
'attribute' => 3,
'attributename' => 'a3',
'option' => 6,
'optionname' => 'o6',
),
6 =>
array (
'category' => 2,
'categoryname' => 'c2',
'attribute' => 4,
'attributename' => 'a4',
'option' => 7,
'optionname' => 'o7',
),
7 =>
array (
'category' => 2,
'categoryname' => 'c2',
'attribute' => 4,
'attributename' => 'a4',
'option' => 8,
'optionname' => 'o8',
),
)
preferences:
132.44 ms | 411 KiB | 5 Q