这篇文章给大家介绍php中for和foreach循环语句的区别是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
php循环语句for和foreach的区别有哪些
有两种语法,第二种比较次要但却是第一种的有用的扩展.
foreach(array_expressionas$value){
......
}
foreach(array_expressionas$key=>$value){
......
}
第一种格式遍历给定的array_expression数组.每次循环中,当前单元的值被赋给$value并且数组内部的指针向前移一步(因此下一次循环中将会得到下一个单元).
第二种格式做同样的事,只除了当前单元的键名也会在每次循环中被赋给变量$key.
自php5起,还可能遍历对象.
注:当foreach开始执行时,数组内部的指针会自动指向第一个单元.这意味着不需要在foreach循环之前调用reset().
注:除非数组是被引用,foreach所操作的是指定数组的一个拷贝,而不是该数组本身.因此数组指针不会被each()结构改变,对返回的数组单元的修改也不会影响原数组.不过原数组的内部指针的确在处理数组的过程中向前移动了.假定foreach循环运行到结束,原数组的内部指针将指向数组的结尾.
php循环语句for和foreach的区别有哪些
自php5起,可以很容易地通过在$value之前加上&来修改数组的单元.此方法将以引用赋值而不是拷贝一个值.
$arr=array(1,2,3,4);
foreach($arras&$value){
$value=$value*2;
}
//$arrisnowarray(2,4,6,8)
?>
此方法仅在被遍历的数组可以被引用时才可用(例如是个变量).
注意:foreach不支持用“@”来抑制错误信息的能力。
关于php中for和foreach循环语句的区别是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。