您的位置:首页 > 编程语言 > PHP开发

个人遇到的问题汇总

2016-08-01 10:11 253 查看

1.PHP try/catch 与 fatal error

try
/
catch
只对抛出的异常(有异常抛出或异常的子类抛出)有用,在
PHP
中你无法使用这个函数捕捉 fatal error。

如果你的
DB
变量无法建立数据库链接,我会认为这是fatal error,因为你在这页面上做任何有意义的事情都离不开
DB
变量。

假如不能建立链接,PDO会抛出一个异常。不过假如你的$DB返回的是空指针,那么这是个fatal error。与其利用
if($db==null)
这样的代码块绕过这样的问题,不如修复代码以保证
$db
始终被定义。

假如真想“catch”fatal error,需要使用函数
set_error_handler
,不过仍然会在fatal error出现时停止执行脚本。

上面翻译自Explosion Pills 在 stackflow 回答 :详细地址

当不需要捕捉fatal error时,用这样的代码以绕过fatal error:

1.
$db = @mysql_connect(...)
or
die(...);


2.
if($db)

do sth...


2.

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  php 异常