php中的例外...为什么没有人使用它们?

Gel*_*elu 10 php exception-handling

我是php的新手,当我在寻找如何使用套接字的例子时,我注意到它们都没有包含异常处理代码.

首先我认为也许php没有例外......但谷歌告诉我不然.有很多文章赞扬在php中使用异常(我来自Java和C#,我是一个转换过的)但是,在实例中,似乎没有人关心trys/catches.

是因为php在以前的版本中没有例外吗?

示例(伪代码):

$fp = fsockopen($allTheNeededParams);
if(!$fp){
   //error handling
}
fwrite($fp, $out);//<-what if something goes wrong here? the socket is never closed?
fclose($fp);
Run Code Online (Sandbox Code Playgroud)

在其他语言中,当你处理套接字时,你会看到try/catch到处都是.为什么不在PHP?

StackOverflow的两个例子:

谢谢你的时间!

Vic*_*let 21

PHP有一种以启示录为主题的错误处理方法:如果出现任何问题,脚本就会结束,并且它正在使用的任何资源(数据库连接,文件,套接字,内存)都会被运行时释放.这使得它不太重要的来处理这些问题比在Java或C#,其中服务器代码连续运行-在PHP中,未处理的错误条件是指单个用户的不便,在Java或C#这可能意味着结束了资源泄漏为所有人带来服务器.

而且,当然,事实上PHP在其功能库的大部分功能已经完成之后添加了异常,这意味着所有这些功能都使用返回代码和错误报告而不是异常.用异常替换错误不能在库级别完成(它会破坏太多的现有代码),而在代码级别,这是一项艰巨的任务,需要大量的样板来检测错误,同时对其进行静默,并抛出异常.