diff options
Diffstat (limited to 'system/core')
-rw-r--r-- | system/core/Log.php | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/system/core/Log.php b/system/core/Log.php index 7d318ed57..e7a271f4e 100644 --- a/system/core/Log.php +++ b/system/core/Log.php @@ -198,7 +198,20 @@ class CI_Log { return FALSE; } - $message .= $level.' - '.date($this->_date_fmt).' --> '.$msg."\n"; + // Instantiating DateTime with microseconds appended to initial date is needed for proper support of this format + if (strpos($this->_date_fmt, 'u') !== FALSE) + { + $microtime_full = microtime(TRUE); + $microtime_short = sprintf("%06d", ($microtime_full - floor($microtime_full)) * 1000000); + $date = new DateTime(date('Y-m-d H:i:s.'.$microtime_short, $microtime_full)); + $date = $date->format($this->_date_fmt); + } + else + { + $date = date($this->_date_fmt); + } + + $message .= $level.' - '.$date.' --> '.$msg."\n"; flock($fp, LOCK_EX); |