【发布时间】:2016-02-17 16:02:59
【问题描述】:
我刚开始使用 hhvm/hack。但我想向浏览器显示错误但没有让它工作。
我将ini设置如下
error_reporting(E_ALL);
ini_set('display_errors', '1');
根据ini_get 的var_dump,值被设置为
string(5) "32767"
string(1) "1"
但是当我这样做时
<?hh
error_reporting(E_ALL);
ini_set('display_errors', '1');
throw new InvalidArgumentException('test');
当我通过浏览器访问该页面时,我只会得到一个白屏和一个 500 http 标头。所以没有解释致命/异常错误。
但是我会通过终端hhvm index.php 它会显示吗?
Fatal error: Uncaught exception 'InvalidArgumentException' with message 'test' in /var/www/public/index.php:3
Stack trace:
#0 {main}
所以现在的问题。为什么我在浏览器中没有收到任何消息,但在 cli 中却收到了?第二个是,我如何让它在浏览器中工作以显示消息。
我遇到了这个question 和this one。但第一个,好吧是一样的,但没有答案。第二个是关于静态检查的内容。 IE 给出了一个 int 等,至少我认为他是这个意思。
其他question我过来了,看起来像我的,但又无人回答。
根据docs,我猜它应该可以工作。
阅读更多关于我遇到的文档
虽然 display_errors 可以在运行时设置(使用函数 ini_set()),但如果脚本出现致命错误,它不会有任何影响。这是因为没有执行所需的运行时操作。
所以我认为异常是一个致命错误,所以我只是做了$test = $bar + 1;
这让 cli 到
Notice: Undefined variable: bar in /var/www/public/index.php on line 8
int(1)
再次在浏览器中
int(1)
所以我也没有收到通知。
当我重新启动 hhvm service hhvm restart 时,我也收到错误消息 Log file not specified under daemon mode. 不知道是否与它有关
【问题讨论】:
标签: hhvm