如果我要改变数组某一个值 直接遍历的话原数组是不会变的 下面提供两种方法
1.我们可以遍历的时候组合数据然后 array_push()把数据赋给另一个新的数组这样才可以 如:
$data=array(1,2,3,4); $newdata=array(); foreach($data as $k=>$v){ if($v==2) $v=666;//我们想把值等于2的改为666 这样的话在内部改变了$v但是$data还是没改变 array_push($newdata,$v);//这样可以得到我们想要的数组 }
2.我们可以在遍历的值前面加个&符号这样就可以改变原数组了 不需要用array_push()了
$data=array(1,2,3,4); foreach($data as &$v){ if($v==2) $v=666;//因为$v前面加了'&'所以原数组就直接改变了 }
相关推荐:
立即学习“PHP免费学习笔记(深入)”;
如何理解PHP中for与foreach两个循环结构遍历数组的区别
以上就是PHP中foreach加&遍历的同时改变原数组的方法的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号