Php 为什么在这段代码中会出现未捕获的异常?

Php 为什么在这段代码中会出现未捕获的异常?,php,exception,try-catch,Php,Exception,Try Catch,因此,在我下面的代码中,我不确定哪里出错了。语法使用不当,变量使用错误?请帮忙 出于某种原因,我在浏览器中运行此命令并返回 “致命错误:在C:\xampp\htdocs\php\u testing\test.php:29堆栈跟踪:#0{main}中,在第29行的C:\xampp\htdocs\php\u testing\test.php中引发未捕获的异常‘numexception’,并显示消息‘数字未设置’” 我不明白我的代码哪里出错了 class numexception extends Ex

因此,在我下面的代码中,我不确定哪里出错了。语法使用不当,变量使用错误?请帮忙

出于某种原因,我在浏览器中运行此命令并返回

“致命错误:在C:\xampp\htdocs\php\u testing\test.php:29堆栈跟踪:#0{main}中,在第29行的C:\xampp\htdocs\php\u testing\test.php中引发未捕获的异常‘numexception’,并显示消息‘数字未设置’”

我不明白我的代码哪里出错了

class numexception extends Exception{}

function multiply($a,$b){
     echo $a*$b;
}


$var1 = 5;
//$var2 = 2; as you can see variable 2 is not set as I commented it out to test
//the exception

if(!isset($var1) or !isset($var2)){
  throw new numexception("The numbers are not set");
}

try{
    multiply($var1,$var2);
}
catch(numexception $e){
    echo "This exception was caught:".$e->getMessage();
}

echo "The script then continues";

throw
不在
try
中,因此不能
catch
ed


你的代码所做的事情就像用高尔夫球打某人,然后大叫“Fore!”。投掷
不在
try
中,因此它不能被
catch
ed


你的代码所做的就像用高尔夫球打某人,然后大叫“Fore!”。

在苏格兰,它后面跟着“你这个混蛋”,所以你是说抛出新的异常进入try块?这正是我所说的。在苏格兰,它后面跟着“你这个混蛋”你是说抛出新异常进入try块?这正是我要说的。