Запись в журнал ошибок с информацией о местном времени и разрывом строки в конце

Мне нужно написать локальную информацию о времени, сообщение об ошибке в файл журнала php. Я не знаю, почему я не могу получить формат правильно. Сценарий, который я использую, таков:

error_log('['.date("F j, Y, g:ia").']'.$msg." <br>", 3, $phperrorPath); 

Есть две проблемы:

  1. Дата не записывается по местному времени, а по умолчанию используется GMT + 0; Я хочу записать информацию о времени машины в журнал
  2. После того, как файл написан, он не прерывается другой строкой.

Как изменить этот код?

Установите свое местное время с помощью date_default_timezone_set :

 date_default_timezone_set('UTC'); 

Добавление параметров формата e и O к вызову date даст вам идентификатор часового пояса и смещение по часовой стрелке:

 date("F j, Y, g:iae O") 

Добавьте «\ n» в конец строки:

 //I've left in the HTML line break error_log('['.date("F j, Y, g:iae O").']'.$msg."<br /> \n", 3, $phperrorPath); 

Строки не будут объединены при использовании «3» в качестве второго аргумента error_log , а использование «0» будет записывать вывод в местоположение по умолчанию, указанное в php.ini. «2» больше не вариант, поэтому я думаю, что ручное объединение разрыва строки – это путь. Видеть:

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

Кроме того, взгляните на местное время

Что касается «2», я подозреваю, что это потому, что вы используете разрыв строки форматирования HTML
вместо разрыва строки файла \ n . Может быть, стоит попробовать.

Попробуйте использовать:

 date_default_timezone_set('MYT'); 

Это установит часовой пояс сценария в Куала-Лумпур, Малайзия (это страна вашего профиля).

Затем используйте:

 error_log('['.date("F j, Y, g:iae O").']'.$msg."<br />\r\n",3,$phperrorPath); 

Я не знаю, хотите ли вы оставить там тег <br /> HTML, поэтому я оставил его там.