Jquery中文网 www.jquerycn.cn
Jquery中文网 >  脚本编程  >  php  >  正文 php中foreach和for的性能区别是什么?

php中foreach和for的性能区别是什么?

发布时间:2020-05-22   编辑:www.jquerycn.cn
jquery中文网为您提供php中foreach和for的性能区别是什么?等资源,欢迎您收藏本站,我们将为您提供最新的php中foreach和for的性能区别是什么?资源
php中foreach和for的性能区别是什么?下面本篇文章给大家对比一下php中的for和foreach的性能,介绍一下foreach和for的区别。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

php中for和foreach的性能对比

总体来说,如果数据库过几十万了,才能看出来快一点还是慢一点,如果低于10万的循环,就不用测试了。php推荐用foreach。

循环数字数组时,for需要事先count($arr)计算数组长度,需要引入自增变量$i,每次循环都要进行条件判断$i<$c,然后自增$i ,输出数组元素时,$arr[$i]需要进行哈希操作。

而foreach循环数组时,指针会自动指向下一个元素,不需要计算数组长度,没有条件判断和自增变量,调用元素时也没有哈希操作,所以性能肯定要比for和while高。

另外,for和while对存在键值映射的关联数组无能为力。所以,遍历数组,首选foreach。

foreach也是我PHP里最喜欢的关键字,因为它确实强大。array_map/array_filter/array_walk遍历数组的方式和foreach一样,但需要执行回调函数,所以也比foreach慢。

更多相关知识,请关注 jquery中文网!!

以上就是php中foreach和for的性能区别是什么?的详细内容,更多请关注jQuery中文网其它相关文章!

  • 本文原创发布jQuery中文网,转载请注明出处,感谢您的尊重!
  • 您可能感兴趣的文章:
    通过实例看php地址引用的效率问题
    php中的daddslashes()和saddslashes()的区别
    有关php的ob_flush()与flush()使用方法
    有关php的全局变量global与$GLOBALS[]的区别
    关于jQuery中.attr()和.prop()的问题探讨
    关于jquery中全局函数each使用介绍
    phpexcel导出excel的颜色与网页中颜色不一致的解决方法
    Linux系统分区详解
    php中explode与split的区别
    php跨域调用json的例子

    [关闭]