当前位置:Gxlcms > PHP教程 > phpdebug记录程序执行时间和执行情况

phpdebug记录程序执行时间和执行情况

时间:2021-07-01 10:21:17 帮助过:24人阅读

/** * debuging('dtrace'); //查看调用栈 * debuging($var); //打印$var(var_dump) * debuging($var, 'php'); //打印$var(var_export) * debuging($var, $echo, 2); //以json格式
输出$var * debuging(__LINE__.__CLASS);//常用于大量if语句体定位, 或者寻找程序结束点 */function debuging($var = '', $echo = '', $die = false, $force = false) { static $clear; if (0 && $clear === null) { ob_end_flush (); $clear = true; } static $d; if (0 && empty ( $d )) { $d = 1; debuging ( 'dtrace' ); } $force && $_GET ['debug'] = 1; if (isset ( $_GET ['debug'] )) { if ('dtrace' === $var) { dTrace ( $die ); } elseif ($die === 2) { header ( 'Content-type: application/json' ); echo json_encode ( $var ); } else { echo "
\n";      if ($echo) {        echo "$echo:";      }      if ($echo === 'php')        var_export ( $var );      else        var_dump ( $var );      echo "
\n"; } $die && die (); }}function dTrace($die = false) { try { static $lastTime; $lastTime or $lastTime = $_SERVER ['REQUEST_TIME']; throw new Exception (); } catch ( Exception $e ) { $currTime = microtime ( true ); $totalTime = $currTime - $_SERVER ['REQUEST_TIME']; $execTime = $currTime - $lastTime; $lastTime = $currTime; echo "\n
\n"; echo "execTime: $execTime s.
\n"; echo "totalTime: $totalTime s.
\n"; echo "Trace:
\n"; // echo $e->getTraceAsString() ; // debug_print_backtrace();$die && die; debuging ( $e->getTraceAsString (), 'php', $die ); }}for($i=0;$i<100000;$i++) { $a +=$i;}dTrace();

人气教程排行