萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> php編程 >> php如何實現不借助IDE快速定位行數或者方法定義的文件和位置

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

有朋友問:php如何實現不借助IDE快速定位行數或者方法定義的文件和位置?本文詳細介紹了解決該問題的方法,寫得通俗易懂,有需要的朋友可以參考一下

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

 

 代碼如下復制代碼

functionfunction_dump($funcname) {

  try{

 

    if(is_array($funcname)) {

      $func=newReflectionMethod($funcname[0],$funcname[1]);

      $funcname=$funcname[1];

    }else{

      $func=newReflectionFunction($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');

輸出:

 代碼如下復制代碼functionget_affiliate defined by D:\WWW\admin\affiliate.php(232 - 238)
copyright © 萬盛學電腦網 all rights reserved