广告:宝塔Linux面板高效运维的服务器管理软件 点击【 https://www.bt.cn/p/uNLv1L 】立即购买
PHP 的解释器为 Zend Engine ,进入源码包的 Zend
目录,这是 PHP 最核心的部分,主要负责 PHP 的语法实现、内存管理及脚本的编译运行环境等。
相关教程:《PHP7》
/opt/softpackage/php-5.6.8/Zend/opt/softpackage/php-7.2.33/Zend/opt/softpackage/php-7.4.0/Zend登录后复制
找到测试文件 bench.php
,这个文件里编写了很多测试代码,比如
// 执行一百万次字符串 hallo 长度的计算function simplecall() { for ($i = 0; $i < 1000000; $i++) strlen("hallo");}登录后复制
执行 /usr/local/php-5.6.8/bin/php bench.php
,测试结果如下
simple 0.657simplecall 1.980simpleucall 1.712simpleudcall 1.935mandel 2.531mandel2 2.860ackermann(7) 1.101ary(50000) 0.282ary2(50000) 0.147ary3(2000) 1.557fibo(30) 5.309hash1(50000) 0.362hash2(500) 0.348heapsort(20000) 1.564matrix(20) 0.857nestedloop(12) 0.796sieve(30) 0.737strcat(200000) 0.079------------------------Total 24.813登录后复制
执行 /usr/local/php-7.2.33/bin/php bench.php
,测试结果如下
simple 0.089simplecall 0.037simpleucall 0.156simpleudcall 0.169mandel 0.483mandel2 0.566ackermann(7) 0.148ary(50000) 0.186ary2(50000) 0.020ary3(2000) 0.237fibo(30) 0.519hash1(50000) 0.062hash2(500) 0.048heapsort(20000) 0.120matrix(20) 0.121nestedloop(12) 0.265sieve(30) 0.129strcat(200000) 0.035------------------------Total 3.388登录后复制
执行 /usr/local/php-7.4.0/bin/php bench.php
,测试结果如下
simple 0.059simplecall 0.016simpleucall 0.033simpleudcall 0.052mandel 0.144mandel2 0.135ackermann(7) 0.042ary(50000) 0.169ary2(50000) 0.007ary3(2000) 0.060fibo(30) 0.126hash1(50000) 0.031hash2(500) 0.028heapsort(20000) 0.080matrix(20) 0.049nestedloop(12) 0.075sieve(30) 0.030strcat(200000) 0.014------------------------Total 1.151登录后复制
通过对比发现 PHP 7 性能提升明显,PHP 5 需要大概 25 秒执行完成测试代码,而 PHP 7 均不超过 4 秒,另外 PHP 7.4 比 PHP 7.2 性能又有不少的提升。当然不一样的测试环境测试结果会不一样,但是性能提升肯定是一致的。
另外 Zend
目录还有一个更复杂的测试文件 micro_bench.php
, 有兴趣的伙伴可以自行去测试。如果 PHP 8 稳定版正式发布之后,小伙伴们也可以去亲身感受一下 PHP 8 的性能如何。
以上就是关于PHP5与PHP7的性能对比的详细内容,更多请关注9543建站博客其它相关文章!
发表评论