I'm struggling with array_merge
to make an array of items. The code which I have:
$items = [];
foreach ($products as $product) {
Log::info($product->orderproduct->idorder_product);
$items = array_merge($items, [
'id' => $product->orderproduct->idorder_product
]);
}
Log::info(print_r($items, true));
The output is:
6
7
['id' => 7]
How can I create an array with both id's?
Not sure what result you expect, so there are 2 options:
foreach ($products as $product) {
Log::info($product->orderproduct->idorder_product);
// First
$items[] = $product->orderproduct->idorder_product;
// Second
$items[] = ['id' => $product->orderproduct->idorder_product];
}
Array merge is just another array which add into the bottom of the array. I think you are misleading us on the result you want to get.
$items = array(); / $items = [];
you can push the data into array easily by this code
$items[] = array(
'id' => $product->orderproduct->idorder_product,
)