正如标题所述:
Warning: getimagesize failed to open, etc
有没有办法忽略这些,这意味着不打印它们?原因是,我基本上不在乎,它们非常罕见,我显然在测试时做了,但是当这样做时,我宁愿设置代码给我发电子邮件,而不是向用户发送一条很难看的消息。
这个问题适用于顺便提一下的任何警告。
答案 0 :(得分:6)
有几种不同的方式:
ini_set('display_errors', false);
@
运算符出现Surpress错误:@getimagesize(...);
答案 1 :(得分:2)
存在多种方式,这里有一些......
error_reporting(0); //Will hide all errors from hapenning
最终,您只能关闭E_WARNING,但这需要一些布尔数学才能从当前的error_reporting()设置中仅排除E_WARNING。
另一种方法是在你希望隐藏错误的操作前加上@符号:
$returnvalue = @getimagesize($params);
这样可以防止错误显示......
最后一种方法是使用以下方式关闭错误显示:
ini_set('display_errors', 0);
但是这样,所有错误,警告,通知都被隐藏了。它们仍然会登录到错误日志文件中。
我可能想要给你的最后一个警告是,从不编码,可能会出错。总有一些验证你可以做,应该做。关闭错误或忽略它们通常是不好的,当你试图解决问题时可能会导致困难,因为你决定只是隐藏潜在的错误而产生的问题。
祝你好运答案 2 :(得分:1)
它们是php错误,您可以通过更改PHP INI设置来关闭它们,搜索display_errors
display_errors = Off
答案 3 :(得分:0)
我假设这里涉及一些PHP。您可以通过配置php.ini(php配置文件)文件来更改错误报告。您可以关闭错误报告,将其保留以显示警告和通知,将其置于错误状态或将其保留为开启状态。
通知和警告不会导致重大问题或使脚本无法运行。但致命错误会阻止脚本运行。
所以在你的php.ini文件中,找一下这行:
error_reporting = E_ERROR,并将其更改为以下之一或组合:
E_ALL - All errors and warnings
E_ERROR - fatal run-time errors
E_WARNING - run-time warnings (non-fatal errors)
E_PARSE - compile-time parse errors
E_NOTICE - run-time notices (these are warnings which often result
from a bug in your code, but it's possible that it was
intentional (e.g., using an uninitialized variable and
relying on the fact it's automatically initialized to an
empty string)
E_CORE_ERROR - fatal errors that occur during PHP's initial startup
E_CORE_WARNING - warnings (non-fatal errors) that occur during PHP's
initial startup
E_COMPILE_ERROR - fatal compile-time errors
E_COMPILE_WARNING - compile-time warnings (non-fatal errors)
E_USER_ERROR - user-generated error message
E_USER_WARNING - user-generated warning message
E_USER_NOTICE - user-generated notice message
通过将值设置为E_ERROR
,将不会显示警告和通知。只会显示错误。
答案 4 :(得分:0)
您可以使用error_reporting(0);
,或者您也可以使用.htaccess文件和php.ini
来设置错误报告。