PHP最终与返回之间的交互
介绍
当try块或catch块(或两者)都包含return语句时,finally块会有特殊的行为。通常return语句使程序的控制返回到调用位置。但是,如果函数带有带有return的try/catch块,则finally块中的语句将在返回之前首先执行。
示例
在下面的示例中,div()函数具有try-catch-finally构造。try块无一例外会返回除法结果。如果发生异常,catch块将返回错误消息。但是,无论哪种情况,都首先执行finally块中的语句。
示例
<?php
function div($x, $y){
try {
if ($y==0)
throw new Exception("Division by 0");
else
$res=$x/$y;;
return $res;
}
catch (Exception $e){
return $e->getMessage();
}
finally{
echo "This block is always executed\n";
}
}
$x=10;
$y=0;
echo div($x,$y);
?>输出结果
显示以下输出
This block is always executed Division by 0
将$y的值更改为5。显示以下输出。
This block is always executed 2
热门推荐
10 财运虎年祝福语简短语
11 单亲爸爸春节祝福语简短
12 狗狗上厕所训练
13 植物种植祝福语简短
14 翻译考试祝福语朋友简短
15 个人周年庆简短祝福语
16 狗狗怎么训练
17 分别祝福语简短搞笑英文
18 生日广州男生祝福语简短