Проблема с выводом посредством Foreach PHP
Имеется массив:
Array
(
[0] => Array
(
[product_id] => 120
)
[1] => Array
(
[product_id] => 168
)
[2] => Array
(
[product_id] => 173
)
.....
)
прохожу по массиву посредством foreach:
foreach($b as $key => $value){
//тут еще будет запрос в бд для получения данных по каждому product_id ($value)
$get = array($key => $value);
print_r($get);
}
получаю на вывод:
Array
(
[0] => Array
(
[product_id] => 120
)
)
Array
(
[1] => Array
(
[product_id] => 168
)
)
Array
(
[2] => Array
(
[product_id] => 173
)
)
как привести вывод в порядок Array( Array 1, Array 2 ...., а не по отдельности необходимо для того чтобы для каждого товара получить значение views (views: 1), затем суммировать количество views:1
Ответы (2 шт):
Автор решения: Владимир Клыков
→ Ссылка
$a = [0=>['product_id'=>120],1=>['product_id'=>168],2=>['product_id'=>173]];
foreach($a as $key => $value){
$a[$key]=$value['product_id'];
}
print_r($a);
Автор решения: Алексей Шиманский
→ Ссылка
Если использовать array_column вот так:
$productIds = array_column($array, 'product_id');
то можно получить массив с идентификаторами [120, 168, 173]. Дальше его можно подставить в запрос в SELECT...FROM....WHERE id IN (ВОТ СЮДА)
