遇到问题
平常的工作中,多数是从mysql读取数据后放入到array中。今天碰到少量数据不需要放在数据库中,直接定义array。输出页面后逻辑处理,需要更新arry数组中的值,然后输出到前端。
解决问题
方法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前面加了'&'所以原数组就直接改变了
}