Home  >  Article  >  Backend Development  >  Let’s talk about how to modify the keys in a two-dimensional array in PHP

Let’s talk about how to modify the keys in a two-dimensional array in PHP

PHPz
PHPzOriginal
2023-04-20 09:10:00724browse

PHP two-dimensional array is an array composed of multiple one-dimensional arrays, where each one-dimensional array contains multiple elements. When processing such an array, sometimes we need to modify the keys in the two-dimensional array to meet our business needs. This article will introduce how to modify the keys in a two-dimensional array in PHP.

1. Modify the specified keys of all sub-arrays

Sometimes, we need to modify the specified keys of all sub-arrays in a two-dimensional array to a new key name. You can use the array_map function to do this accomplish. The array_map function can apply a custom function to each element of the array.

The following is a code example:

function changeKey($arr, $oldkey, $newkey){
    if(!is_array($arr)){
        return $arr;
    }
    $result = array();
    foreach($arr as $key=>$val){
        if(is_array($val)){
            $result[$key] = changeKey($val, $oldkey, $newkey);
        } else {
            $result[$key] = $val;
            if($key == $oldkey){
                $result[$newkey] = $val;
                unset($result[$oldkey]);
            }
        }
    }
    return $result;
}

$oldArray = array(
    array('id'=>1, 'name'=>'php', 'type'=>'backend'),
    array('id'=>2, 'name'=>'js', 'type'=>'frontend')
);

$newArray = array_map(function($arr){
    return changeKey($arr, 'type', 'category');
}, $oldArray);

print_r($newArray);

The above code changes the 'type' key in all sub-arrays in $oldArray to the 'category' key. The output result is as follows:

Array
(
    [0] => Array
        (
            [id] => 1
            [name] => php
            [category] => backend
        )

    [1] => Array
        (
            [id] => 2
            [name] => js
            [category] => frontend
        )

)

2. Modify the specified key of the specified sub-array

Sometimes, we only need to modify the specified key of a certain sub-array in the two-dimensional array. You can directly modify the sub-array. Array to achieve. The following is a code example:

$oldArray = array(
    array('id'=>1, 'name'=>'php', 'type'=>'backend'),
    array('id'=>2, 'name'=>'js', 'type'=>'frontend')
);

foreach($oldArray as &$arr){
    if($arr['id'] == 1){
        $arr['type'] = 'server side';
    }
}

print_r($oldArray);

The above code changes the 'type' key of the subarray with $id 1 in $oldArray to 'server side'. The output results are as follows:

Array
(
    [0] => Array
        (
            [id] => 1
            [name] => php
            [type] => server side
        )

    [1] => Array
        (
            [id] => 2
            [name] => js
            [type] => frontend
        )

)

3. Conclusion

PHP two-dimensional array is one of the data structures widely used in PHP. Once you master the method of modifying the keys in the PHP two-dimensional array, you can easily do it data processing. This article introduces two methods of modifying keys in PHP two-dimensional arrays through examples. I hope it will be helpful to everyone.

The above is the detailed content of Let’s talk about how to modify the keys in a two-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