Home >Backend Development >PHP Problem >How to build a multidimensional array in PHP

How to build a multidimensional array in PHP

PHPz
PHPzOriginal
2023-04-23 10:14:03780browse

PHP is a popular programming language that supports the creation of multi-dimensional arrays. A multidimensional array is an array nested within another array, similar to a multivariate array. In PHP, there are many ways to create multi-dimensional arrays. This article will introduce several commonly used methods.

Method 1: Use array literals to create multi-dimensional arrays

Array literals refer to the method of directly defining arrays in code. You can use array literals to create multidimensional arrays to represent complex data structures. For example, the following code creates a two-dimensional array containing three subarrays:

$array = [
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]
];

In this example, $array is a two-dimensional array containing three subarrays, one for each The array contains three elements. Each element can be accessed using a subscript:

echo $array[0][1]; // 输出2

Using array literals to create multidimensional arrays is very convenient, especially when the array elements are known. However, when the number of array elements is large, writing literals manually becomes difficult and verbose.

Method 2: Use loops to create multi-dimensional arrays

Loops are one of the common methods to create multi-dimensional arrays. You can use a for loop or a foreach loop to iterate through an array and add new elements. For example, the following code creates a two-dimensional array containing three subarrays, each containing three random numbers:

$array = [];
for ($i = 0; $i < 3; $i++) {
    $subarray = [];
    for ($j = 0; $j < 3; $j++) {
        $subarray[] = rand(1, 10);
    }
    $array[] = $subarray;
}

In this example, two nested for loops are used to create the subarrays . The first loop iterates through three positions in the main array, adding a new subarray at each position. The second loop iterates through the three positions in each sub-array, adding a new random number at each position.

Method 3: Use recursive functions to create multi-dimensional arrays

Recursion is one of the advanced methods to create multi-dimensional arrays. A recursive function refers to a function that calls itself. You can use recursive functions to create multi-dimensional arrays at any level. For example, the following code creates a two-dimensional array containing three subarrays, each containing three subarrays:

function create_multi_array($depth) {
    if ($depth == 0) {
        return [];
    }
    return [
        create_multi_array($depth - 1),
        create_multi_array($depth - 1),
        create_multi_array($depth - 1)
    ];
}

$array = create_multi_array(3);

In this example, create_multi_array() is a recursive function , which accepts an integer parameter representing the depth of the array. If the depth is 0, the function returns an empty array. Otherwise, the function returns an array containing three subarrays, each created by calling create_multi_array() three times recursively.

Method 4: Use the array_fill() function to create a multi-dimensional array

array_fill() is a PHP built-in function that can be used to create an array containing specified values. Multidimensional arrays can be created using nested array_fill() function calls. For example, the following code creates a two-dimensional array containing three subarrays, each containing three identical values:

$array = array_fill(0, 3, array_fill(0, 3, "hello"));

In this example, first call array_fill(0, 3, "hello")Create an array containing three strings "hello". Then, use nested array_fill() function calls three times to create an array of three subarrays, each subarray is filled by calling array_fill(0, 3, "hello")Created.

Summary

In PHP, there are many ways to create multidimensional arrays, including using array literals, loops, recursive functions, and built-in functions. Each method has its own advantages and disadvantages, depending on the data structure and other elements being processed. Getting familiar with these methods and practicing using them will help improve your PHP programming skills.

The above is the detailed content of How to build a multidimensional array in PHP. For more information, please follow other related articles on the PHP Chinese website!

Statement:
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