PHP教程:PHP NOTICE级错误提示对程序性能影响的研究

很多人开发php的时候喜欢关掉一部分的错误提示,尤其是Notice级别的提示,这样做可以省去一些严格判断的代码。而平时开发喜欢开着E_ALL级别的我今天在接手同事的项目时,看着满屏幕Notice错误时突然想到了1个问题:

在关掉错误提示时,那么程序代码中大量的notice级别错误是否会造成PHP性能下降,从而使关闭错误输出成为一个掩耳盗铃的做法呢?

下面我来用性能测试来证明这个推论:

测试1:

在关闭错误显示的情况下,测试未初始化变量和已初始化变量在10000000次循环中的性能

变量已初始化的循环代码如下:

点击查看原图

变量未初始化的循环代码如下:

点击查看原图

测试成绩:

初始化:平均 5.28 秒

未初始化:平均 17.2 秒

性能差距:3.25倍

 

测试2:

在关闭错误显示的情况下,测试数组索引使用引号和非引号引用在10000000次循环中的性能

数组有引号索引代码如下:

点击查看原图

数组无引号索引代码如下:

点击查看原图

测试成绩:

有引号:平均 6.37 秒

无引号:平均 25.19秒

性能差距:3.95倍

平均时间表:

点击查看原图

结论:

由上面的测试我们可以看到,关闭掉PHP错误输出并不会关闭php内核对错误的处理,代码中如果有大量的Notice级别的错误,还是会降低php程序的性能。所以我们在开发的时候还是要将错误级别开至E_ALL,谨慎的处理掉每处不合理的代码,这样既可以提高了代码的严谨性,也提高了代码的运行性能。

思想之地 原创文章,转载请注明出处!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值