У меня в настоящее время есть массив, который строит с правильными данными, зацикливая объект, но он дает неправильный формат:
$priceResult = array();
foreach($prices->categories as $category){
$priceResult[] = $category->category_name;
$priceResult[] = $category->category_desc;
$priceResult[] = $category->category_code;
foreach($category->products as $product){
$priceResult[] = $product->product_info->item->item_code;
foreach ($product->product_info->details as $details) {
$priceResult[] = $details->description;
$priceResult[] = $details->color;
$priceResult[] = $details->sector;
}
$priceResult[] = $product->product_info->code;
$priceResult[] = $product->product_info->item->description;
$priceResult[] = $product->product_info->item->item_type->quantity;
foreach(get_object_vars($product->prices) as $amount){
$priceResult[] = $amount;
}
}
}
Хотя это не ассоциативно.
Итак, в настоящее время, скажем, у меня есть одна категория с двумя продуктами, тогда все они распечатываются как один массив
array({
1:category_name
2:category_desc
3:category_code
4:item_code
5:description
6:color
7:sector
8:code
9:description
10:quantity
11:amount
12:item_code
13:description
14:color
15:sector
16:code
17:description
18:quantity
19:amount
})
Я хотел бы получить структуру, где родительским уровнем является код категории с его именем и описанием, а затем каждый код элемента и его собственная информация, например:
array({
category_name
category_desc
category_code
Array(
1: item_code array(
details array(
description
color
sector
)
code
description
quantity
amount)
2: item_code array(
details array(
description
color
sector
)
code
description
quantity
amount)
)
})
Как я могу изменить это, чтобы создать нужные мне уровни, чтобы они правильно форматировались при экспорте в электронную таблицу