首頁  >  文章  >  後端開發  >  php如何實作不借助IDE快速定位行數或方法定義的檔案和位置

php如何實作不借助IDE快速定位行數或方法定義的檔案和位置

高洛峰
高洛峰原創
2017-01-21 14:03:561000瀏覽

php 如何實現不借助IDE快速定位行數或方法定義的文件和位置

借助了ReflectionMethod的一些特性,可以快速獲得函數或者方法是在哪個文件的什麼位置定義的,對於調試沒有文檔的程序來說很有幫助!

function function_dump($funcname) {
  try {
 
    if(is_array($funcname)) {
      $func = new ReflectionMethod($funcname[0], $funcname[1]);
      $funcname = $funcname[1];
    } else {
      $func = new ReflectionFunction($funcname);
    }
     
  } catch (ReflectionException $e) {
    echo $e->getMessage();
    return;
  }
 
  $start = $func->getStartLine() - 1;
 
  $end = $func->getEndLine() - 1;
 
  $filename = $func->getFileName();
 
  echo "function $funcname defined by $filename($start - $end)\n";
}

 

使用:

function_dump('get_affiliate');

輸出:

function get_affiliate defined by D:\WWW\admin\affiliate.php(232 - 238)

更多php如何實現不借助IDE快速定位行數或方法定義的檔案和位置相關文章請關注PHP中文網!


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn