We just learned about the 3 types of arrays in PHP from the following blog post.
3 Types of Arrays in PHPLet's take a look at the examples of how to loop through each type of arrays.
Indexed Array Loop Through Using For Loop
$hobbies= array("Reading", "Sports", "Guitar");
$arraylength = count($hobbies);
echo "List of Hobbies";
for($x = 0; $x < $arraylength; $x++) {
echo $hobbies[$x];
}
Output:
List of Hobbies:
Reading
Sports
Guitar
So as we can see in the example above, we can easily loop through indexed array using for loop.
But for Associative Arrays we need to use ForEach loop.
Let's take a look at the example.
$age = array("Yogi"=>"28", "Hulk"=>"56", "Captain"=>"34");
foreach($age as $x => $x_value) {
echo "Name=" . $x . ", Age=" . $x_value;
echo "<br>";
}
Output:
Name=Yogi, Age=28
Name=Hulk, Age=56
Name=Captain, Age=34
So, foreach will give us the correct output. If you try to use for loop, you can use only one variable and if you try to use for loop inside a for loop then it will become 2 dimensional array but it's actually not and you'll get an error.
Let's take a look at the last type.
We are using the same data from this blog post.
$water = array
(
array("Members Mark",22,18),
array("Dasani",15,13),
array("Bubly",5,2),
array("Aqua",17,15)
);
for ($row = 0; $row < 4; $row++) {
echo "<p><b>Row: $row</b></p>";
echo "<ul>";
for ($col = 0; $col < 3; $col++) {
echo "<li>".$water[$row][$col]."</li>";
}
echo "</ul>";
}
Output:
Row: 0
Members Mark
22
18
Row: 1
Dasani
15
13
Row: 2
Bubly
5
2
Row: 3
Aqua
17
15
As you can see in the multidimensional array example above, we need for loop inside for loop to fetch all the data. The more deep the data is stores, the more for loops we will need and it'll become very complex data storage.
array associative for loop