php中的try和catch是什么意思?

经常看到例程里边这两个配合使用try{//...}catch(Exception$e){//...}就是不知到底是什么意思?... 经常看到例程里边这两个配合使用
try
{ //...}
catch(Exception $e)
{ //...}
就是不知到底是什么意思?
展开
 我来答
光环国际
2015-08-26 · IT·互联网经理人培训口碑品牌
光环国际
光环国际成立于2001年7月,是一家专注于IT互联网经理人培训机构,经过18年发展,光环卓而不凡的服务品质,现已成为IT互联网经理人培训国内口碑品牌。
向TA提问
展开全部
Try - 使用异常的函数应该位于 "try" 代码块内。如果没有触发异常,则代码将照常继续执行。但是如果异常被触发,会抛出一个异常。

Catch - "catch" 代码块会捕获异常,并创建一个包含异常信息的对象。

让我们触发一个异常:

//创建可抛出一个异常的函数

function checkNum($number)

{

if($number>1) {

throw new Exception("Value must be 1 or below");

}

return true;

}

//在 "try" 代码块中触发异常

try {

checkNum(2);

//If the exception is thrown, this text will not be shown echo 'If you see
this, the number is 1 or below'; }

//捕获异常

catch(Exception $e)

{ echo 'Message: ' .$e->getMessage(); }

?>

例子解释:

上面的代码抛出了一个异常,并捕获了它:

创建 checkNum() 函数。它检测数字是否大于 1。如果是,则抛出一个异常。

在 "try" 代码块中调用 checkNum() 函数。

checkNum() 函数中的异常被抛出

"catch" 代码块接收到该异常,并创建一个包含异常信息的对象 ($e)。

通过从这个 exception 对象调用 $e->getMessage(),输出来自该异常的错误消息

不过,为了遵循“每个 throw 必须对应一个 catch”的原则,可以设置一个顶层的异常处理器来处理漏掉的错误。
非典型天秤座
2007-06-06 · TA获得超过1395个赞
知道大有可为答主
回答量:850
采纳率:0%
帮助的人:1346万
展开全部
是异常处理.
将要执行的代码放入TRY块中,如果这些代码执行过程中某一条语句发生异常,则程序直接跳转到CATCH块中,由$e收集错误信息和显示.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友c67c98046
推荐于2018-03-15 · TA获得超过517个赞
知道小有建树答主
回答量:900
采纳率:0%
帮助的人:0
展开全部
楼上的写出了概念,我给你一个例程
PHP Try-catch 语句
为了进一步处理异常,我们需要使用try-catch语句----包括Try语句和至少一个的catch语句。任何调用 可能抛出异常的方法的代码都应该使用try语句。Catch语句用来处理可能抛出的异常。以下显示了我们处理getCommandObject()抛出的异常的方法:

<?php
try {
$mgr = new CommandManager();
$cmd = $mgr->getCommandObject("realcommand");
$cmd->execute();
} catch (Exception $e) {
print $e->getMessage();
exit();
}
?>

可以看到,通过结合使用throw关键字和try-catch语句,我们可以避免错误标记“污染”类方法返回的值。因为“异常”本身就是一种与其它任何对象不同的PHP内建的类型,不会产生混淆。

如果抛出了一个异常,try语句中的脚本将会停止执行,然后马上转向执行catch语句中的脚本。

如果异常抛出了却没有被捕捉到,就会产生一个fatal error。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式