以下内容适用于 PHP 5.3,但不适用于 PHP 5.4.10。
throw new Custom_Exception();
class Custom_Exception extends Exception {}
PHP 5.4.10 将响应以下致命错误:
在...中找不到类“Custom_Exception”
有谁知道为什么?
ps 将类定义移到 throw 语句上方可以修复它。
以下内容适用于 PHP 5.3,但不适用于 PHP 5.4.10。
throw new Custom_Exception();
class Custom_Exception extends Exception {}
PHP 5.4.10 将响应以下致命错误:
在...中找不到类“Custom_Exception”
有谁知道为什么?
ps 将类定义移到 throw 语句上方可以修复它。
我将您的代码放入名为 test.php 的文件中,并下载了php-5.4.10
当我执行时:
php -c php.ini-development -f test.php
我看到以下输出:
PHP Fatal error: Uncaught exception 'Custom_Exception' in test.php:3
Stack trace:
#0 {main}
thrown in test.php on line 3
Fatal error: Uncaught exception 'Custom_Exception' in test.php:3
Stack trace:
#0 {main}
thrown in test.php on line 3
我相信你有一个配置问题。你是从命令行测试吗?
编辑:
我还比较了 zend_compile.c 中的 do_bind_inherited_class 两个版本。
看起来他们只增加了对特征的支持。
我的回答是:不,我不相信态度已经改变。