Здравствуйте!
У меня есть массив $orders вот такого вида:
Array
(
[0] => Array
(
[id] => 1
[date_time] => 2024-01-04 10:51:58
[phone] => +77053204950
[delivery_or_pickup] => 1
[products] => Array
(
[0] => Array
(
[id] => 1
[orders_id] => 1
[articul] => 1_30
[quantity] => 1
[price] => 3200
[name] => Пицца 4 сезона
[size] => 30
)
[1] => Array
(
[id] => 2
[orders_id] => 1
[articul] => 2_30
[quantity] => 1
[price] => 3800
[name] => Пицца карбонара
[size] => 30
)
)
)
)
И когда я вывожу его с помощью foreach:
foreach ($orders as $order) {
var_dump($order['products']);
foreach ($order['products'] as $product) {
var_dump($product);
}
}
Первый var_dump($order['products']); выводит на экран так:
array(2) { [0]=> array(7) { ["id"]=> string(1) "1" ["orders_id"]=> string(1) "1" ["articul"]=> string(4) "1_30" ["quantity"]=> string(1) "1" ["price"]=> string(4) "3200" ["name"]=> string(25) "Пицца 4 сезона" ["size"]=> string(2) "30" } [1]=> &array(7) { ["id"]=> string(1) "2" ["orders_id"]=> string(1) "1" ["articul"]=> string(4) "2_30" ["quantity"]=> string(1) "1" ["price"]=> string(4) "3800" ["name"]=> string(29) "Пицца карбонара" ["size"]=> string(2) "30" } }
то есть тут все правильно - два разных продукта.
НО второй var_dump($product); выводит:
array(7) { ["id"]=> string(1) "1" ["orders_id"]=> string(1) "1" ["articul"]=> string(4) "1_30" ["quantity"]=> string(1) "1" ["price"]=> string(4) "3200" ["name"]=> string(25) "Пицца 4 сезона" ["size"]=> string(2) "30" }
array(7) { ["id"]=> string(1) "1" ["orders_id"]=> string(1) "1" ["articul"]=> string(4) "1_30" ["quantity"]=> string(1) "1" ["price"]=> string(4) "3200" ["name"]=> string(25) "Пицца 4 сезона" ["size"]=> string(2) "30" }
То есть два одинаковых продукта!
Как такое возможно?