protected function _prepareTraceStruct($trace_struct) { $total_time = $trace_struct['time'] - CTrace::getStartTime(); $microtime = round($trace_struct['time'] - floor($trace_struct['time']), 3) * 1000; $date = date('Y-m-d', floor($trace_struct['time'])); $time = date('H:i:s', floor($trace_struct['time'])); $delta_time = round($trace_struct['time'] - $this->_last_time, 3); $delta_time = $delta_time <= 0 ? $delta_time : '+' . $delta_time; $delta_mem = round(($trace_struct['mem'] - $this->_last_mem) / (1024 * 1024), 2); $delta_mem = $delta_mem <= 0 ? $delta_mem : '+' . $delta_mem; $this->_last_time = $trace_struct['time']; $this->_last_mem = $trace_struct['mem']; $trace_struct['microtime'] = sprintf('%03d', $microtime); $trace_struct['date'] = $date; $trace_struct['time'] = $time; $trace_struct['delta_time'] = $delta_time; $trace_struct['delta_mem'] = $delta_mem; $trace_struct['mem'] = sprintf('%.3f', $trace_struct['mem'] / (1024 * 1024)); $trace_struct['filepath'] = $trace_struct['file']; $trace_struct['file'] = basename($trace_struct['file']); $trace_struct['func'] = $trace_struct['func'] == null ? '' : $trace_struct['func']; $trace_struct['class'] = $trace_struct['class'] == null ? '' : $trace_struct['class'] . $trace_struct['type']; $trace_struct['total_time'] = sprintf('%.3f', $total_time); return $trace_struct; }