前几天的一个面试题目,涉及到了当catch到一个Exception时,try之后的代码是否还会执行,简单写个测试试一下
<?php
function test($n) {
try {
if ($n == 0) {
throw new Exception("is zero\r\n");
} else {
echo 6 / $n . "\r\n";
}
} catch (Exception $e) {
echo $e->getMessage();
}
echo "hello world\r\n";
}
test(6);
test(0);
?>
结果为
1
hello world
is zero
hello world
结论:很明显,当catch到Exception之后以上代码依旧输出了hello world,说明了try之后的代码还会继续执行