微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PHP中的匿名函数性能

我开始在 PHP中使用功能性编程范例,并且想知道性能影响是什么.有些谷歌似乎只是说有一些.具体来说,我想知道:

>真的有性能影响还是城市传奇?
>什么是性能影响(希望有人做了基准测试)?
>什么原因导致这种影响(如果存在)?
>是固定成本还是执行?

任何资源,你们将会非常感激:)

提前致谢

我用array_map()做了一些测试,用:

>函数名称(array_map(‘test’,$myArray);)
>包含一个闭包的变量(array_map($test,$myArray);)
>一个闭包(array_map(function {}(),$myArray);)

在所有三种情况下,函数为空(function test(){})

具有1.000.000个项目($myArray = range(1,1000000);)的数组的结果)

Function: 0.693s
Variable:0.703s
Closure: 0.694s

对于一个10.000.000个项目的数组,结果是这样的:

Function: 8.913s
Variable: 8.169s
Closure: 8.117s

所以在这两种情况下,我们都有很多开销,如果有的话.

另请参阅http://fabien.potencier.org/article/17/on-php-5-3-lambda-functions-and-closures的第4条评论得出同样的结论.在该评论中,您还会看到create_function()显着较慢.

原文地址:https://www.jb51.cc/php/131700.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐