1.程式執行的過程中,在對應的地方記錄你想要追蹤的變數及呼叫棧和每次函數呼叫的參數,
把這些資訊以一定的格式記錄到檔案,一個變數一行,具體資料格式請參看程式碼,這裡不細講.
2.現在有了每次記錄變數時的所有資訊(包括呼叫棧及參數),當你透過瀏覽器存取這個程式時, 這個程式會把整個檔案讀取分析,
在頁面顯示你的所有調試信息,並且它會動態ajax刷新,保持與你的調試同步.
畫個圖吧,要清晰得多.
BackTrace也就是調用棧信息,沒有在圖中體現,是ajax動態刷新的.
功用:
再截幾個本機的圖說明下:
1.包含文件,調試變量(上面是程序,下面是apache_request_headers()的偵錯輸出)
2.drupal系統某次函數的呼叫堆疊清單
特別是像drupal這類複雜的系統,能夠清楚地知道程式是怎麼執行的.
程式是用php4的寫法寫成的,在php4.4.8, 5.2.5上測試過, 理論上是支持php4, php5的.
linux, window, ie6-7, firefox下也都測試過,但還是不敢保證在你的環境下不出錯,如有,請自行修正.
請不讓log文件超過5M大小,瀏覽器可能會崩潰的.
感謝您的閱讀,更多相關文章請關注PHP中文網(www.php.cn) !