PHP错误日志和换行符

Chr*_*ess 16 php apache debugging

什么是PHP配置设置允许或阻止调试输出中的换行符被转义?

在两个不同的安装(运行MAMP/OSX的开发笔记本电脑和运行debian的开发服务器)上,我在调试时会在错误日志中看到不同的结果.

error_log(print_r(array(1,2,4),1));
Run Code Online (Sandbox Code Playgroud)

在Debian上,它出现在/var/log/apache2/error.log中

[Thu Jul 30 11:32:34 2009] [error] [client 118.93.246.104] Array\n(\n    [0] => 1\n    [1] => 2\n    [2] => 4\n)\n, referer: http://dev.example.org/
Run Code Online (Sandbox Code Playgroud)

在OSX上,它出现在/ Applications/MAMP/logs/php_error_log中

[30-Jul-2009 11:34:00] Array
(
    [0] => 1
    [1] => 2
    [2] => 4
)
Run Code Online (Sandbox Code Playgroud)

我更喜欢MAMP方式进行调试(除了将日志文件重定位到/ Applications目录).

谢谢!

hob*_*ave 14

Chris,您应该能够在Debian上的php.ini中更改error_log指令以指向文件.如果未定义,则它将通过不支持多行的syslog.

细节:

error_log函数

error_log指令