首页 / PHP / 为什么PHP 7没有发现一些错误?
为什么PHP 7没有发现一些错误?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了为什么PHP 7没有发现一些错误?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1061字,纯文字阅读大概需要2分钟。
内容图文
![为什么PHP 7没有发现一些错误?](/upload/InfoBanner/zyjiaocheng/811/edd698c38276418faca3076d8f547633.jpg)
参见英文答案 > Can I try/catch a warning? 10个
在PHP 7中,可以抛出的任何对象的基本接口是Throwable.对于所有内部PHP错误,我们还有一个Error基类.但为什么我不能发现如下错误:
一个)
try {
$file = fopen('not_exist_file', 'r');
} catch (\Error $e) {
echo 'Cannot open a file';
}
预期结果:’无法打开文件’
实际结果:PHP警告:fopen(not_exist_file):无法打开流:没有这样的文件或目录
b)
try {
$result = 10 / 0;
} catch(\DivisionByZeroError $e){
echo 'Catch DivisionByZeroError';
} catch (\Throwable $e) {
echo 'Catch Throwable';
}
预期结果:’Catch DivisionByZeroError’
实际结果:PHP警告:在…中除以零
C)
try {
trigger_error('User error');
} catch(\Error $e) {
echo 'Catch error';
} catch (\Throwable $e) {
echo 'Catch throwable';
}
预期结果:’捕捉错误’
实际结果:PHP注意:用户错误..
我的PHP版本7.1.1(cli)
解决方法:
您列出的错误未被捕获,因为它们不会被抛出.它们不是例外,而是PHP代码从一开始就是triggered的传统错误,在异常之前的几年和语言中引入了OOP.
但是,您可以通过为它们创建和抛出ErrorException对象来处理错误.
ErrorException类的文档包含一个如何操作的简单示例.
内容总结
以上是互联网集市为您收集整理的为什么PHP 7没有发现一些错误?全部内容,希望文章能够帮你解决为什么PHP 7没有发现一些错误?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。