Home > Backend Development > PHP Problem > How to use loop to output three-dimensional array in PHP

How to use loop to output three-dimensional array in PHP

PHPz
Release: 2023-04-20 16:18:57
Original
982 people have browsed it

When developing and writing PHP programs, we often need to traverse the elements in the array, process them and present them to the front-end page. In this process, sometimes we may encounter a three-dimensional array, that is, a nested array also contains an array. How to use a loop to output such a three-dimensional array? We will discuss this in detail below.

1. Understand the structure of three-dimensional arrays

Before we start to explain the loop output of three-dimensional arrays, we need to first understand the structure of three-dimensional arrays. A three-dimensional array is composed of multiple two-dimensional arrays, and each two-dimensional array contains multiple single-element arrays. An example is as follows:

$three_dimensional_array = array(
    array(
        array(1, 2, 3),
        array(4, 5, 6),
        array(7, 8, 9)
    ),
    array(
        array(10, 11, 12),
        array(13, 14, 15),
        array(16, 17, 18)
    ),
    array(
        array(19, 20, 21),
        array(22, 23, 24),
        array(25, 26, 27)
    )
);
Copy after login

As you can see, in this three-dimensional array, we have a total of three two-dimensional arrays, and each two-dimensional array has three single-element arrays.

2. Use foreach loop to output a three-dimensional array

To loop through all the elements in a three-dimensional array, we can use PHP's built-in foreach loop statement. The example is as follows:

foreach ($three_dimensional_array as $two_dimensional_array) {
    foreach ($two_dimensional_array as $single_element_array) {
        foreach ($single_element_array as $value) {
            echo $value . ' ';
        }
    }
}
Copy after login

In this example, we use three nested foreach loop statements to traverse the two-dimensional array and single-element array in the three-dimensional array respectively, and finally output all the elements in the three-dimensional array. element.

3. Use a for loop to output a three-dimensional array

Another commonly used loop traversal method is to use a for loop statement. However, since there are multiple levels of arrays nested in the three-dimensional array, using a for loop may be a little cumbersome. An example is as follows:

for ($i = 0; $i < count($three_dimensional_array); $i++) {
    $two_dimensional_array = $three_dimensional_array[$i];
    for ($j = 0; $j < count($two_dimensional_array); $j++) {
        $single_element_array = $two_dimensional_array[$j];
        for ($k = 0; $k < count($single_element_array); $k++) {
            echo $single_element_array[$k] . ' ';
        }
    }
}
Copy after login

In this example, we use a three-level nested for loop to traverse all the elements in the three-dimensional array and output them to the front-end page.

4. Use the array_walk_recursive function to output a three-dimensional array

In addition to using foreach and for loop statements, PHP also provides a function that directly traverses all multi-dimensional array elements, which is array_walk_recursive(). The example is as follows:

function output_single_element($value, $key)
{
    echo $value . ' ';
}

array_walk_recursive($three_dimensional_array, 'output_single_element');
Copy after login

In this example, we define a callback function named output_single_element, which is used to output the value of a single element in the array. Then, we used the array_walk_recursive() function to traverse the entire three-dimensional array, and called the callback function output_single_element() each time it traversed to a single array element to output it to the front-end page.

5. Summary

This article introduces three commonly used loop statements and functions to output all elements in a nested three-dimensional array. No matter which method is used, the key point is to clarify the structure of the three-dimensional array and the array boundaries of each layer, and then use the traversal method to output the elements in the array.

The above is the detailed content of How to use loop to output three-dimensional array in PHP. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template