我使用PHPStorm开发PHP Web应用程序并使用其内置的PHPUnit测试运行器。在IDE的输出窗口中,它显示输出缓冲区(例如,已回显的任何内容)。
我可以使用ini_set('display_errors', 'On')
和error_reporting(E_ALL)
看到错误显示。但是,使用error_log()
输出的任何内容都不会显示(但它会在错误日志中显示)。
有没有办法可以将任何写入错误日志的内容也显示在输出缓冲区中?
答案 0 :(得分:0)
足够简单:包装函数。
function error_log_out($message, $message_type=0, $destination=0, $extra_headers="") {
error_log($message,$message_type,$destination,$extra_headers);
echo $message; // optionally add some formatting
}
答案 1 :(得分:0)
我发现使用我没有写入权限的文件的ini php
值调用error_log
; php会将error_log()
输出发送到stdout然后。
$ touch ~/my_php_error.log
$ php -d error_log=~/my_php_error.log -r 'error_log("Hello World");'
# Writes to ~/my_php_error.log
$ chmod -w ~/my_php_error.log
$ php -d error_log=~/my_php_error.log -r 'error_log("Hello World");'
Hello World
# Writes to stdout
-r "...cmd"
可以代替运行的php文件