Home > Backend Development > PHP Problem > How to convert two-dimensional array values ​​into a new array in php

How to convert two-dimensional array values ​​into a new array in php

PHPz
Release: 2023-04-23 09:23:06
Original
969 people have browsed it

With the continuous development of Internet technology, Web development has attracted more and more attention. As a high-performance scripting language, PHP also plays an important role in Web development. In PHP development, two-dimensional arrays are a common data structure that can be used to store multiple records of data to facilitate operations on these data. This article mainly introduces how to use PHP to convert the values ​​​​of a two-dimensional array into a new array.

What is a two-dimensional array

In PHP, an array is a very important data structure, which consists of a series of ordered elements, each element has a key and a corresponding value. A two-dimensional array is an array with two dimensions. It can store multiple one-dimensional arrays, and each one-dimensional array has a unique key and corresponding value.

The following is a simple example showing how to create a two-dimensional array:

$students = array(
    array("name"=>"小明", "age"=>18, "gender"=>"男"),
    array("name"=>"小红", "age"=>20, "gender"=>"女"),
    array("name"=>"小刚", "age"=>19, "gender"=>"男")
);
Copy after login

The above code creates a two-dimensional array containing three one-dimensional arrays, each one-dimensional array represents Basic information about a student, including name, age and gender.

How to convert the values ​​of a two-dimensional array into a new array

When we need to perform complex processing on a two-dimensional array, converting it into a new array is a very convenient way. Let's introduce how to use PHP to convert the values ​​​​of a two-dimensional array into a new array.

  1. array_column function

PHP provides a very convenient function array_column, which can be used to get the value of a certain column from a two-dimensional array and format it as a new array return. The syntax of this function is as follows:

array array_column(array $input, mixed $column_key [, mixed $index_key = null])
Copy after login

Among them, the $input parameter is the two-dimensional array to be processed, the $column_key parameter is the specified column name or numeric key, and the $index_key parameter is an optional parameter, used to specify a new The key name of the array. Here is an example:

$students = array(
    array("name"=>"小明", "age"=>18, "gender"=>"男"),
    array("name"=>"小红", "age"=>20, "gender"=>"女"),
    array("name"=>"小刚", "age"=>19, "gender"=>"男")
);

$names = array_column($students, "name");
print_r($names);
Copy after login

The above code will get the column named "name" from the $students array and store it as a new array $names. The output results are as follows:

Array
(
    [0] => 小明
    [1] => 小红
    [2] => 小刚
)
Copy after login
Copy after login
Copy after login
  1. foreach loop

In addition to using the array_column function, we can also use the foreach loop to convert a two-dimensional array into a new array. The following is a simple example:

$students = array(
    array("name"=>"小明", "age"=>18, "gender"=>"男"),
    array("name"=>"小红", "age"=>20, "gender"=>"女"),
    array("name"=>"小刚", "age"=>19, "gender"=>"男")
);

$names = array();
foreach ($students as $student) {
    $names[] = $student["name"];
}
print_r($names);
Copy after login

The above code first creates an empty array $names, and then traverses each one-dimensional array in the $students array through a foreach loop to obtain the value corresponding to its "name" key , and add it to the $names array. The output result is as follows:

Array
(
    [0] => 小明
    [1] => 小红
    [2] => 小刚
)
Copy after login
Copy after login
Copy after login
  1. array_map function

In addition to the above two methods, we can also use the array_map function to convert the values ​​of the two-dimensional array into a new array. The array_map function applies a callback function to each element in the array and returns a new array. The following is an example:

$students = array(
    array("name"=>"小明", "age"=>18, "gender"=>"男"),
    array("name"=>"小红", "age"=>20, "gender"=>"女"),
    array("name"=>"小刚", "age"=>19, "gender"=>"男")
);

$names = array_map(function($student) {
    return $student["name"];
}, $students);

print_r($names);
Copy after login

The above code first defines an anonymous callback function, which is used to obtain the "name" value of each one-dimensional array in the $students array and use it as an element of the new array . Afterwards, use the array_map function to execute the callback function and form the returned elements into a new array $names. The output is as follows:

Array
(
    [0] => 小明
    [1] => 小红
    [2] => 小刚
)
Copy after login
Copy after login
Copy after login

Summary

The above introduces three common methods that can be used to convert the values ​​of a two-dimensional array in PHP into a new array. Whether you use the array_column function, foreach loop or array_map function, you can achieve the same effect, with their own advantages and disadvantages. In actual projects, the most suitable method should be selected based on the specific situation.

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