84 $this->_id = md5(microtime());
85 $this->_ident = $ident;
87 if (isset($conf[
'buffering'])) {
88 $this->_buffering = $conf[
'buffering'];
91 if ($this->_buffering) {
92 register_shutdown_function(array(&$this,
'_Log_firebug'));
95 if (!empty($conf[
'lineFormat'])) {
96 $this->_lineFormat = str_replace(array_keys($this->_formatMap),
97 array_values($this->_formatMap),
101 if (!empty($conf[
'timeFormat'])) {
102 $this->_timeFormat = $conf[
'timeFormat'];
113 $this->_opened =
true;
133 $this->_opened =
false;
143 if (count($this->_buffer)) {
144 print
'<script type="text/javascript">';
145 print
"\nif (('console' in window) && ('firebug' in console)) {\n";
146 foreach ($this->_buffer as $line) {
152 $this->_buffer = array();
167 function log($message, $priority = null)
170 if ($priority === null) {
181 $method = $this->_methods[$priority];
184 $message = str_replace(
"\r\n",
"\n", $message);
187 $message = str_replace(
"\n",
"\\n\\\n", $message);
190 $message = str_replace(
'"',
'\\"', $message);
193 $line = $this->
_format($this->_lineFormat,
194 strftime($this->_timeFormat),
198 if ($this->_buffering) {
199 $this->_buffer[] = sprintf(
'console.%s("%s");', $method, $line);
201 print
'<script type="text/javascript">';
202 print
"\nif (('console' in window) && ('firebug' in console)) {\n";
204 printf(
' console.%s("%s");', $method, $line);
209 $this->
_announce(array(
'priority' => $priority,
'message' => $message));