使用本地时间信息写入错误日志,并在末尾写入换行符

Gra*_*ton 4 php

我需要将本地时间信息,异常消息写入php日志文件.我不知道为什么我的格式不正确.我使用的脚本是这样的:

  error_log('['.date("F j, Y, g:i a").']'.$msg." <br>", 3,  $phperrorPath);
Run Code Online (Sandbox Code Playgroud)

这有两个问题:

  1. 日期不是以当地时间写的,而是默认为GMT + 0时间; 我想将机器时间信息写入日志
  2. 写入文件后,它不会中断到另一行.

如何修改此代码?

kar*_*m79 8

使用date_default_timezone_set以下方式设置当地时间

date_default_timezone_set('UTC');
Run Code Online (Sandbox Code Playgroud)

将e和O格式参数添加到date调用中将为您提供时区标识符和GMT偏移量:

date("F j, Y, g:i a e O")
Run Code Online (Sandbox Code Playgroud)

在字符串末尾添加"\n":

//I've left in the HTML line break
error_log('['.date("F j, Y, g:i a e O").']'.$msg."<br /> \n", 3,  $phperrorPath); 
Run Code Online (Sandbox Code Playgroud)

使用"3"作为第二个参数时error_log,行不会连接,使用"0"会将输出写入php.ini中指定的默认位置."2"不再是一个选项,所以我认为手动连接换行符是要走的路.看到:

http://php.net/manual/en/function.error-log.php

此外,看一看本地时间