Вывести количество определенных элементов массива PHP

<?php foreach ($orders as $order) { ?>
    <?php echo $order['order_type']; ?>
<?php } ?>

Выводит: 2 2 3 2 2 2 2 3 3 2

подскажите как вывести и подсчитать кол-во определенных элементов в массиве

Нужно отобразить так:

Элементы с номером 2: 7

Элементы с номером 3: 3


Ответы (3 шт):

Автор решения: Василий

Я бы проверкой сделал. иф !=3 не выводим.

if ($order['order_type'] != 3)
{
не выводим
}
echo выводим
→ Ссылка
Автор решения: mx928

$counts = array();

foreach ($orders as $order) {
    if (!isset($counts[$order['order_type']])) {
        $counts[$order['order_type']] = 0;
    }
    $counts[$order['order_type']]++;
}

echo $counts[2]; // output 7
echo $counts[3]; // output 3
→ Ссылка
Автор решения: Deonis

Как вариант, можно таким способом (array_column + array_count_values):

foreach(array_count_values(array_column($orders, 'order_type')) as $k => $v) {
    echo 'Элементы с номером ', $k, ': ', $v, PHP_EOL;
}
→ Ссылка