PHP错误抑制被忽略

我当前的PHP.ini文件设置为报告除弃用和严格标准以外的所有错误,如下所示:

error_reporting = E_ALL & ~E_STRICT & ~E_DEPRECATED

使用此设置的原因是我们迫切需要在托管我们网站的Linux服务器上执行PHP升级;问题是,已弃用的功能和严格的标准建议将很快填满170多个网站的错误日志文件.这些错误主要是由于函数没有声明为静态等等.最终我们将通过所有站点并修复这些问题,但与此同时我们需要抑制错误.

我在本地测试环境中遇到的问题(运行我们希望升级到的PHP版本 – 5.4.3)是错误仍然显示以下打印之前:

SCREAM: Error suppression ignored for

任何人都可以让我深入了解为什么忽略错误抑制以及如何正确地抑制错误

提前致谢.

解决方法

看来你正在使用尖叫扩展.从手册:

The scream extension gives the possibility to disable the silencing error control operator so all errors are being reported. This feature is controlled by an ini setting.

Scream是调试的扩展,旨在显示尽可能多的错误消息.这是通过忽略@运算符并始终具有最高的error_reporating级别来完成的. (无论您的error_reporting设置如何).所以你必须在你的PHP.ini中停用扩展名:

scream.enabled = off

顺便说一句:我不会更新有170个代码错误的网站的服务器.现在这是一颗定时炸弹.最好将它们逐站点迁移到新的PHP版本.在迁移过程中可能有两台服务器并行.

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...