foreach遍历数组,增加键值对,改变值

一、增加键值对

我们从数据表里面的查出来的数据字段,远远不能满足我们返回的数据,需要在次基础上增加一些必须的参数,那么我们就可以用foreach遍历数组‘&’地址传递来实现。

$arr=[

['name'=>'xiaoqian', 'sex' =>'女', 'age' =>'25'],
['name'=>'liuxin', 'sex' =>'男', 'age' =>'26']
复制代码

];

foreach ( k=>&$v ){

$v['address']='q';
复制代码

} var_dump($arr);

结果:

array (size=2)

0 =>

array (size=4)
  'name' => string 'xiaoqian' (length=8)
  'sex' => string '女' (length=3)
  'age' => string '25' (length=2)
  'address' => string 'q' (length=1)
复制代码

1 => &

array (size=4)
  'name' => string 'liuxin' (length=6)
  'sex' => string '男' (length=3)
  'age' => string '26' (length=2)
  'address' => string 'q' (length=1)
复制代码

二、改变值

$arr=[

['name'=>'xiaoqian', 'sex' =>'女', 'age' =>'25'],
['name'=>'liuxin', 'sex' =>'男', 'age' =>'26']
复制代码

];

foreach (k=>&$v){

if($v['sex']=='男'){
    $v['name']='刘';
}
复制代码

}

var_dump($arr); 结果:

array (size=2) 0 =>

array (size=3)
  'name' => string 'xiaoqian' (length=8)
  'sex' => string '女' (length=3)
  'age' => string '25' (length=2)
复制代码

1 => &

array (size=3)
  'name' => string '刘' (length=3)
  'sex' => string '男' (length=3)
  'age' => string '26' (length=2)
复制代码

你可能感兴趣的:(foreach遍历数组,增加键值对,改变值)