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在其功能库的大部分功能已经完成之后添加了异常,这意味着所有这些功能都使用返回代码和错误报告而不是异常.用异常替换错误不能在库级别完成(它会破坏太多的现有代码),而在代码级别,这是一项艰巨的任务,需要大量的样板来检测错误,同时对其进行静默,并抛出异常.
| 归档时间: |
|
| 查看次数: |
752 次 |
| 最近记录: |