1

在我的 XAMPP/Win XP 构建中,PHP5.2.3 无法捕获任何异常。这些示例都不起作用,并且:

try {
    throw new Exception('Fail');
} catch (Exception $e) {
    echo 'Succeed';
}

...结果是:

致命错误:M:\path\to\test.php:4 中未捕获的异常 'Exception' 和消息 'Fail' 堆栈跟踪:#0 {main}在第4 行的M:\path\to\test.php中抛出

PHP 的所有错误设置似乎都是标准的。服务器是 Apache/2.2.4

4

2 回答 2

5

这取决于eAccelerator在 XAMPP 中的构建。有一次,它在优化 try/catch 语句时遇到了麻烦,只是忽略了它们。

问题出在 0.9.5 中。XAMPP 目前与 eAccelerator 0.9.5.3 捆绑在一起,但默认情况下它是禁用的。所以这可能不是你的问题。

根据ChangeLog,XAMPP 已经很久没有使用 PHP 5.2.3 和 Apache 2.2.4 了,这也是 eAccelerator 漏洞出现的时候。我建议检查您的 eAccelerator 版本并可能升级 XAMPP。

于 2009-03-28T04:10:18.313 回答
0

我得到“成功”作为运行脚本的输出,无论是在命令行上独立运行,还是通过网络服务器上的 apache 以及 XAMPPLITE 运行。不知道你的设置有什么不同

于 2009-03-28T04:11:03.677 回答