public static function traceBegin()
{
$dbg = debug_backtrace();
$str = '=> ';
if (!empty($dbg[1]['class'])) {
$str .= $dbg[1]['class'] . '::';
}
$str .= $dbg[1]['function'] . '(';
if (is_array($dbg[1]['args'])) {
foreach ($dbg[1]['args'] as $index => $arg) {
if ($index != 0) {
$str .= ', ';
}
if (is_object($arg)) {
$str .= get_class($arg);
} else {
$str .= str_replace(array("\r\n", "\n", "\r"), "", var_export($arg, true));
}
}
}
if (isset($dbg[1]['file'])) {
$file = basename($dbg[1]['file']);
} else {
$file = 'unknown_file';
}
if (isset($dbg[1]['line'])) {
$line = $dbg[1]['line'];
} else {
$line = 'unknown_line';
}
$str .= ') [' . $file . ':' . $line . ']';
phpCAS::log($str);
if (!isset(self::$_PHPCAS_DEBUG['indent'])) {
self::$_PHPCAS_DEBUG['indent'] = 0;
} else {
self::$_PHPCAS_DEBUG['indent']++;
}
}