Slide 31
Slide 31 text
X(旧twitter): @for__3
#phpcon_okinawa #track_b 31
function traceLog(){
$traces = debug_backtrace(1);
foreach($traces as $i => $trace){
if (!empty($trace['object']) && is_object($trace['object'])) {
$trace['object'] = get_class($trace['object']).':class';
}
if (is_array($trace['args'])) {
foreach ($trace['args'] AS &$arg) {
if (is_object($arg)) { $arg = get_class($arg).'::class'; }
}
}
$text[$i] = ."#".$i." ".$trace['file'].'('.$trace['line'].') ';
$text[$i].= (!empty($trace['object'])?$trace['object'].$trace['type']:'');
$text[$i].= $trace['function'].'('.implode(', ',$trace['args']).')';
}
echo implode("\n", $text) . "\n";
}
debug_backtrace() サンプルコード