search
HomeBackend DevelopmentPHP ProblemHow to convert a two-dimensional array into a one-dimensional array in php

During development, you may encounter the need to convert a two-dimensional array into a one-dimensional array. This article will introduce how to perform this operation in PHP.

A two-dimensional array in PHP is an array composed of multiple one-dimensional arrays, while a one-dimensional array is an array composed of a single value. Therefore, to convert a two-dimensional array into a one-dimensional array, you need to extract all the values ​​​​in the one-dimensional array and then put them into the new one-dimensional array.

1. Use a loop to traverse a two-dimensional array

In PHP, you can use a loop to traverse a two-dimensional array and add the values ​​​​to a new one-dimensional array. The specific implementation is as follows:

$multiArr = array(array('apple', 'banana', 'pear'), array('cat', 'dog', 'lion'));

$singleArr = array();
foreach ($multiArr as $arr) {
    foreach ($arr as $value) {
        $singleArr[] = $value;
    }
}

print_r($singleArr);

In the above code, a two-dimensional array $multiArr is first defined, which contains two one-dimensional arrays. Then create an empty one-dimensional array $singleArr, and then use two nested foreach to loop through each one-dimensional array in $multiArr and among them value and adds the value to $singleArr. Finally, use the print_r() function to print out $singleArr, and the output result is:

Array
(
    [0] => apple
    [1] => banana
    [2] => pear
    [3] => cat
    [4] => dog
    [5] => lion
)

2. Use the call_user_func_array() function

In addition to looping, you can also use the call_user_func_array() function to convert a multi-dimensional array into a one-dimensional array. The specific code is as follows:

$multiArr = array(array('apple', 'banana', 'pear'), array('cat', 'dog', 'lion'));

$singleArr = call_user_func_array('array_merge', $multiArr);

print_r($singleArr);

In the above code, a two-dimensional array $multiArr is first defined, which contains two one-dimensional arrays. Then use the call_user_func_array() function. The first parameter is the array_merge function name, which means that the merge operation is to be performed. The second parameter is the $multiArr array, which means Multiple arrays to merge. The combined new array is the one-dimensional array $singleArr. Finally, use the print_r() function to print out $singleArr, and the output result is:

Array
(
    [0] => apple
    [1] => banana
    [2] => pear
    [3] => cat
    [4] => dog
    [5] => lion
)

3. Use the array_reduce() function

In addition to the above two methods, you can also use the array_reduce() function to convert a two-dimensional array into a one-dimensional array. The specific implementation is as follows:

$multiArr = array(array('apple', 'banana', 'pear'), array('cat', 'dog', 'lion'));

$singleArr = array_reduce($multiArr, 'array_merge', array());

print_r($singleArr);

In the above code, a two-dimensional array $multiArr is first defined, which contains two one-dimensional arrays. Then use the array_reduce() function. The first parameter is the $multiArr array, indicating the array to be merged. The second parameter is the array_merge function name. , indicating that a merge operation is to be performed, and the third parameter is an empty array, indicating that the initial one-dimensional array is an empty array. Finally, store the combined new array into the one-dimensional array $singleArr, and use the print_r() function to print the output result. The output result is the same as the first two methods:

Array
(
    [0] => apple
    [1] => banana
    [2] => pear
    [3] => cat
    [4] => dog
    [5] => lion
)

4. Summary

In this article, three methods of converting two-dimensional arrays into one-dimensional arrays are introduced. In actual development, you can choose the appropriate method according to your needs. For simple two-dimensional arrays, the first method of loop traversal may be easier to understand and implement; for more complex multi-dimensional arrays, the call_user_func_array() function and the array_reduce() function Might be more convenient.

The above is the detailed content of How to convert a two-dimensional array into a one-dimensional 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

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

VSCode Windows 64-bit Download

VSCode Windows 64-bit Download

A free and powerful IDE editor launched by Microsoft

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Integrate Eclipse with SAP NetWeaver application server.

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Powerful PHP integrated development environment