PHP 获取函数被调用的文件及行号等信息

    要写个log函数,记录一些文件日志。想记录被调用的文件及位置。发现魔术函数__FILE__和__LINE__写在函数中,只是函数所在的文件和位置。并不是被引用的文件和位置。传递参数又感觉太麻烦。

 

找了个一个函数:debug_backtrace()

 

demo:

       public function write($message, $level, $fileName)
       {
           $debugInfo = debug_backtrace();
           $filePath = './'
           $message = date('Y/m/d H:i:s') . ' [' . $level . ']' .' ['.$fileName.'] '. $message . PHP_EOL;
           $message .= $debugInfo[0]['file']. ' ('.$debugInfo[0]['line'].')'.PHP_EOL;
           file_put_contents($filePath.$fileName."-".date('Y-m-d').'.log', $message, FILE_APPEND);
      }

 

你可能感兴趣的:(PHP)