我在这里得到了PHP 5.4的奇怪行为。假设以下代码:
class ExceptionDuringConstruction
{
public function __construct() {
echo '<br />construct before exception';
throw new Exception('construction failed');
echo '<br />construct after exception'; // unreachable, just checking
}
public function __destruct() {
echo '<br />destruct';
}
}
$reflection = new \ReflectionClass('ExceptionDuringConstruction');
$instance = $reflection->newInstance();
以上代码打印:
construct before exception
destruct
这可能是对的,还是我错过了什么?如果我使用NEW做同样的事情,一切都像预期的那样工作,没有Destructor被调用。对我来说,这看起来像一个错误 - 任何意见?这是否已知(没有发现任何东西)?
PS:因为这是我在这里的第一个问题,但我已经阅读了很长时间 - 谢谢你这个伟大的网站!它几乎总是如下:Google&gt; Stackoverflow&gt;解决方案机智很好解释: - )