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

来源:互联网 发布:软件系统的性能指标 编辑:程序博客网 时间:2024/05/20 07:35

很多人开发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,谨慎的处理掉每处不合理的代码,这样既可以提高了代码的严谨性,也提高了代码的运行性能。

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

0 0
原创粉丝点击