gpt4 book ai didi

php - 可以为库代码而不是我的代码关闭 E_STRICT?

转载 作者:可可西里 更新时间:2023-11-01 00:07:38 27 4
gpt4 key购买 nike

是否可以更改我的 PHP 应用程序使用 includerequire_once 包含的文件的错误报告级别(关闭 E_STRICT)?

我希望能够看到我的代码中出现的严格通知,但我使用的是 PEAR MDB2,当我打开 E_STRICT 时,我会从该代码中获得警告页面。

我知道可以使用 .htaccess 文件在每个目录的基础上更改 error_reporting,但我认为这不适用于包含的文件。我试着把它放在 pear 文件夹中,但它什么也没做。

最佳答案

你可以 define a custom error handler ,并使用 $errfile 参数来确定错误的来源。如果该路径与您包含的库的路径匹配,则抑制该错误。否则,将其传递给 PHP 的错误报告。

据我所知,这应该会捕获由库引起的所有警告和通知。

因为不需要回溯,所以对于很多触发的消息来说它甚至可能足够快。

这是未经测试的,但根据手册中的示例应该可以工作:

<?php
// error handler function
function myErrorHandler($errno, $errstr, $errfile, $errline)
{

$library_path = "/path/to/library";
if (substr($errfile,0,strlen($library_path))==$library_path)
/* Don't execute PHP internal error handler */
return true;
else
/* execute PHP internal error handler */
return false;
}

关于php - 可以为库代码而不是我的代码关闭 E_STRICT?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2319130/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com