php 怎么捕获所有的异常?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 怎么捕获所有的异常?相关的知识,希望对你有一定的参考价值。

写了个能登陆的网页。我用session 在两个php之间传递账号密码。 登陆成功了就进入这个页面 http://127.0.0.1/user.php 但是当我没有登录而在浏览器中进入 http://127.0.0.1/user.php 的时候显示
:Notice: Undefined index: username in D:\php\www\user.php on line 6

Notice: Undefined index: password in D:\php\www\user.php on line 7

我要怎么处理这个问题呢? 有没有一个异常处理能接受所有的异常啊。就跟c#里面的那个catch 所有的异常一样

这个不是异常啊,这个是错误类型!!
你的错误类型提示设的太高了,这样适合在开发下使用。你可以在可能出现提示错误行前加上@符号就可以抑制提示错误。
php中档然有throw try catch结果语句,但是除了的是异常,也就是exception类。
你自己看看手册吧
参考技术A 所有语言的异常都一样,能捕获基类就能捕获子类,就像你告诉你的狗只要来一个人就咬,它自动会咬老师,学生...老师,学生是人的子类。

例子1,2,3在构造$o的时候发生了异常,所以$o是NULL
例子4则是构造了一个异常类,并没有异常被抛出,所以$o就是个对象,输出你说的结果。
参考技术B set_error_handler('自己的错误处理函数') 参考技术C <?后加上
error_reporting(0); 禁止报错!

以上是关于php 怎么捕获所有的异常?的主要内容,如果未能解决你的问题,请参考以下文章

php:try-catch 未捕获所有异常

新人求教,请问Thinkphp 中怎么捕获异常,自己进行处理

php try catch 捕获哪些错误

PHP 捕获全局异常

c语言异常怎么捕获有几种方式

java 主键异常怎么捕获