PHP foreach with Nested Arrays
For this scenario, where you aim to access the values of a nested array, the foreach loop is an effective tool. To understand its usage, consider this example:
<code class="php">$tmpArray = [ [ 'one', [1, 2, 3] ], [ 'two', [4, 5, 6] ], [ 'three', [7, 8, 9] ] ];</code>
To iterate through the nested array's values, use the following nested foreach loops:
<code class="php">foreach ($tmpArray as $innerArray) { if (is_array($innerArray)) { foreach ($innerArray as $value) { echo $value; } } else { echo $innerArray; } }</code>
This approach allows you to handle both array and non-array elements within the nested array.
If you don't know the depth of your nested array, recursion is an alternative method. This code will recursively display array members with indentation:
<code class="php">function displayArrayRecursively($arr, $indent='') { if ($arr) { foreach ($arr as $value) { if (is_array($value)) { displayArrayRecursively($value, $indent . '--'); } else { echo "$indent $value \n"; } } } }</code>
For your specific case, where you want to display values from the third level only, you can modify the code as follows:
<code class="php">foreach ($tmpArray as $inner) { if (is_array($inner)) { foreach ($inner[1] as $value) { echo "$value \n"; } } }</code>
This approach will display values from the nested array at the third level, i.e., [1, 2, 3], [4, 5, 6], and [7, 8, 9].
The above is the detailed content of How to Effectively Access Nested Arrays in PHP with Different Approaches?. For more information, please follow other related articles on the PHP Chinese website!