Estoy tratando de contar la cantidad de veces que aparece un determinado valor en mi matriz multidimensional en función de una condición. Aquí hay una matriz de ejemplo;Contar valores específicos en matriz multidimensional
$fruit = array (
"oranges" => array(
"name" => "Orange",
"color" => "orange",
"taste" => "sweet",
"healthy" => "yes"
),
"apples" => array(
"name" => "Apple",
"color" => "green",
"taste" => "sweet",
"healthy" => "yes"
),
"bananas" => array(
"name" => "Banana",
"color" => "yellow",
"taste" => "sweet",
"healthy" => "yes"
),
"grapes" => array(
"name" => "Grape",
"color" => "green",
"taste" => "sweet",
"healthy" => "yes"
)
);
Si desea mostrar todas las frutas de color verde, que pueda hacer lo siguiente (que me haga saber si esta es la mejor manera de hacerlo);
for ($row = 0; $row < 3; $row++) {
if($fruit[$row]["color"]=="green") {
echo $fruit[$row]["name"] . '<br />';
}
}
Esto dará salida;
Apple
Grape
Eso está muy bien y puedo ver su son 2 valores allí, pero ¿cómo puedo conseguir realmente PHP para contar el número de frutos, donde el color es verde y lo puso en una variable para que yo use más abajo en la script para trabajar cosas? P.ej. Quiero hacer algo como;
if($number_of_green_fruit > 1) { echo "You have more than 1 piece of green fruit"; }
He echado un vistazo a count(); pero no veo ninguna forma de agregar una cláusula 'WHERE/condicional' (a la SQL).
Cualquier ayuda sería muy apreciada.
En lugar de repetir el nombre, haga la cuenta. 0 + 1 + 1 + 1 + 1 .... – hakre