揮発性のメモ2

http://d.hatena.ne.jp/iww/

関数の引数の「変数名」を取得する

How to get a variable name as a string in PHP? - Stack Overflow
バックトレースを使って、ソースを直接読んで、関数を呼び出している行の変数名を取得する という ちからわざ

<?
function debug_r( $v ){
    $trace = debug_backtrace();
    $file = $trace[0]['file'];
    $line = $trace[0]['line'];

    $vLine = file( $file );
    $fLine = $vLine[$line-1];
    preg_match( "/\\$\w+/", $fLine, $match );
    $varname = $match[0];
    
    $date = date("Y-m-d H:i:s");
    print( "$date $file:$line: $varname=". print_r($v,true) );
}

$hogehoge = new A;
debug_r($hogehoge);
2015-12-30 12:11:12 /home/9KKNg5/prog.php:73: $hogehoge=A Object
(
    [b] => a12
)