У меня есть массив массивов:
$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
переменные пусты.
Как я могу это сделать?
Ты можешь использовать array_column извлечь значения из многомерного массива. Таким образом, чтобы получить массив, содержащий только поля значений, которые вы можете использовать:
$values = array_column($array, "value");
Если вы хотите просто получить количество истинных значений, которые вы можете использовать:
count(array_filter(array_column($array, "value");
Других решений пока нет …