您好,欢迎访问一九零五行业门户网

聊聊修改PHP二维数组中键的方法

php二维数组是由多个一维数组组成的数组,其中每个一维数组都包含多个元素。在处理这样的数组时,有时候我们需要修改二维数组中的键(key),以满足我们的业务需求。本篇文章将会介绍修改php二维数组中键的方法。
一、修改所有子数组的指定键
有时候,我们需要将二维数组中所有子数组的指定键都修改成一个新键名,可以使用array_map函数来实现。array_map函数,可以将自定义的函数作用于数组的每个元素上。
下面是代码示例:
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);
上面的代码,将$oldarray中的所有子数组中的'type'键改为'category'键。输出结果如下:
array(    [0] => array        (            [id] => 1            [name] => php            [category] => backend        )    [1] => array        (            [id] => 2            [name] => js            [category] => frontend        ))
二、修改指定子数组的指定键
有时候,我们只需要修改二维数组中某个子数组的指定键,可以通过直接修改该子数组来实现。下面是代码示例:
$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);
上面的代码,将$oldarray中$id为1的子数组的'type'键改为'server side'。输出结果如下:
array(    [0] => array        (            [id] => 1            [name] => php            [type] => server side        )    [1] => array        (            [id] => 2            [name] => js            [type] => frontend        ))
三、结语
php二维数组是php大量使用的数据结构之一,掌握了修改php二维数组中键的方法,可以方便地进行数据处理。本篇文章通过实例来介绍了两种修改php二维数组中键的方法,希望对大家有所帮助。
以上就是聊聊修改php二维数组中键的方法的详细内容。
其它类似信息

推荐信息