我遇到了一些困难......
function generateExceptionOrError() {
throw new Exception();
}
下面的代码会显示Fatal error: Uncaught exception 'Exception'
:
<? generateExceptionOrError();?>
下面的代码也会显示Fatal error: Uncaught exception 'Exception'
:
<?=generateExceptionOrError();?>
但下面的另一个代码将是静默的,而将不会输出任何有关未处理的异常的信息。它会显示绝对没有空白页面...当然,我认为生成了异常,但为什么它没有显示!?
<link rel="stylesheet" href="<?=generateExceptionOrError();?>" type="text/css">
为什么呢?我错过了什么?
谢谢
更新:方法或其他类型的错误中没有产生差异异常。同样的情况。
答案 0 :(得分:1)
我在测试中注意到的一件事是,如果在elements属性的"
内发生异常,则不会显示整个元素以及之后的任何输出。它似乎可能是一个浏览器/ HTML怪癖。尝试在命令行上运行脚本,看看你得到了什么输出。
示例:
<html>
<head>
<link rel="stylesheet" href="<?php generateExceptionOrError() ?>" type="text/css">
</head>
<body>
</body>
</html>
输出:
<html>
<head>
在命令行上运行此输出:
<html>
<head>
<link rel="stylesheet" href="PHP Fatal error: Uncaught exception 'Exception' with message 'aaa' in /var/www/projects/test.php:4
Stack trace:
#0 /var/www/projects/test.php(11): generateExceptionOrError()
#1 {main}
thrown in /var/www/projects/test.php on line 4
请注意<link rel="stylesheet" href="
,这是您所期望的。
这可能是您问题的根源。
答案 1 :(得分:-2)
错误是你无法看到的。使用firebug或查看源代码,您将在标题中看到类似的内容