Подсчет массивов в двумерном массиве, где какое-то поле не пусто

У меня есть массив массивов:

$array = array (
"text1" => array("link" => "link1.php", "value" => $value1),
"text2" => array("link" => "link2.php", "value" => $value2),
.......
"text9" => array("link" => "link9.php", "value" => $value9)
);

Я хотел бы посчитать количество массивов, для которых "value" поле не является нулевым

Я попробовал это:

count(array_filter($array));

но, очевидно, он возвращает 9, даже если некоторые из $valueN переменные пусты.

Как я могу это сделать?

1

Решение

Ты можешь использовать array_column извлечь значения из многомерного массива. Таким образом, чтобы получить массив, содержащий только поля значений, которые вы можете использовать:

$values = array_column($array, "value");

Если вы хотите просто получить количество истинных значений, которые вы можете использовать:

count(array_filter(array_column($array, "value");
1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector