php 怎么更改关联数组
php更改关联数组的方法:1、创建一个中间临时数组,然后通过遍历赋值实现修改;2、使用回调函数array_map()修改数组;3、使用foreach语句修改数组。
本文操作环境:Windows7系统、PHP7.1版、DELL G3电脑
php 怎么更改关联数组?
php修改关联数组
有以下需求,遍历数组并且对数组的值做出相应改变,例如,全部设为0;
如果数组全部都是索引数组就好办了,直接用for()边遍历边修改。
但如果是关联数组就蛋疼,遍历索引数组就要用foreach,但是foreach是只读的,就是说,无法做出修改。
现在有三种办法:
1、做一个中间临时数组:temp = array()。然后就是边遍历边赋值进去。
2、用回调函数array_map()
示例:
$arr = array_map(function($p) {return 0;}, $arr); //p代表了元素的值,一个一个来
这样就可以全部设置'了。
或者:
array_walk($arr, function(&$value, $key) { $value = 0; });
上述两种方法都是在原来数组修改,不产生新数组
第三种,也是最简单的方法:
foreach($arr as $k => &$v) { $v = 0; }
注意:不要企图改变键值,键值不能是引用
推荐学习:《PHP视频教程》