php中的foreach作为经常用到的函数,常常用来遍历数组,对于数组中的元素是值的情形(如一般常见型的数组),foreach只是将数组中的每份元素的值拷贝到each后面的变量,也就是对值本身的拷贝,对其值进行改变并不会影响到数组本身。

如: (推荐学习:PHP视频教程)
$arr = array(1, 2, 3);
foreach($aa as $el){
$el =+ 100;
}
foreach($arr as $el){
echo $el;
echo "<br/>";
} // 结果:1 2 3但是如果是对象数组的情形,也就是数组元素均为对象时,此时each后面的变量是对对象引用的拷贝,对其进行的改变会直接影响到原数组本身。这点与上面情形很容易弄混。
如:
立即学习“PHP免费学习笔记(深入)”;
$aa = new stdClass();
$aa->name = '张三';
$bb = new stdClass();
$bb->name = '李四';
$arr = array($aa, $bb);
foreach($arr as $element){
$element->name = 'qqyumidi';
}
foreach($arr as $el){
echo $el->name;
echo "<br/>";
} // 结果:qqyumidi qqyumidi以上就是PHP对象数组和一般数组区别的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号