我试图捕获可能在类构造函数中抛出的异常,但我无法理解它为什么不起作用。
这是我的代码:
档案#1
<?php
use Exception;
class MyClass {
function __construct($x) {
if($x < 1) { echo "ok";}
else {
throw new Exception ("ERROR!"); //throws error
}
}
}
文件#2
<?php
include 'file1.php'
try {
$y = new MyClass(3);
} catch (Exception $e) {
echo $e->getMessage();
}
现在我希望看到一条印刷线告诉我&#34;错误!&#34;。 相反,我得到了一个
PHP Fatal error: Uncaught exception 'Exception' with message 'ERROR!' in file1.php:7
Stack trace:
#0 file2(4):MyClass->__construct(3)
#1 {main}
thrown in file1.php on line 7
关于它能依赖什么的任何想法?