How does the count function work with arrays, like the one below?
My thought would be that the following code outputs 4, because there are four elements there:
$a = array
(
"1" => "A",
1 => "B",
"C",
2 => "D"
);
echo count($a);
How does the count function work with arrays, like the one below?
My thought would be that the following code outputs 4, because there are four elements there:
$a = array
(
"1" => "A",
1 => "B",
"C",
2 => "D"
);
echo count($a);
count works exactly as you would expect, e.g., it counts all the elements in an array (or object). But your assumption about the array containing four elements is wrong:
1 => "B" will overwrite "1" => "A".2 => "C"2 => "D" you overwrote "C".So your array will only contain 1 => "B" and 2 => "D" and that's why count gives 2. You can verify this is true by doing print_r($a). This will give
Array
(
[1] => B
[2] => D
)
Please go through Arrays again.
You can use this example to understand how count works with recursive arrays
<?php
$food = array('fruits' => array('orange', 'banana', 'apple'),
'veggie' => array('carrot', 'collard', 'pea'));
// recursive count
echo count($food, COUNT_RECURSIVE); // output 8
// normal count
echo count($food); // output 2
?>