I'm trying to count the number of times a certain value appears in my multidimensional array based on a condition. Here's an example array;
$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"
)
);
If I want to DISPLAY all green coloured fruit, I can do the following (let me know if this is the best way of doing it);
for ($row = 0; $row < 3; $row++) {
if($fruit[$row]["color"]=="green") {
echo $fruit[$row]["name"] . '<br />';
}
}
This will output;
Apple
Grape
That's great and I can see their are 2 values there, but how can I actually get PHP to count the number of fruit where the colour is green and put it in a variable for me to use further down the script to work stuff out? E.g. I want to do something like;
if($number_of_green_fruit > 1) { echo "You have more than 1 piece of green fruit"; }
I've taken a look at count(); but I don't see any way to add a 'WHERE/conditional' clause (a la SQL).
Any help would be really appreciated.