本篇文章更新時間:2020/04/17
如有資訊過時或語誤之處,歡迎使用 Contact 功能通知或向一介資男的 LINE 社群反應。
如果本站內容對你有幫助,歡迎贊助支持


有些環境預設下 PHP 運行出錯時會把方法從哪裡開始呼叫到哪裡出錯的整段資訊印出來,開發人員對照這資訊就很容易進行除錯。

這種除錯的好方法不一定要等到寫錯的情況才可以用。追查系統運作邏輯也可以!查找你寫的或別人寫的方法從哪裡開始發起呼叫到結束,如此去釐清問題。

debug_print_backtrace 方法 (PHP5 後支援)

不過這方法會直接印出,不想要印出來被人看到可以使用下面這種做法:

$e = new Exception();
error_log($e->getTraceAsString());//取回除錯字串

改輸出除錯資訊至 error.log 裡。結果如下:

PHP Error log

#0 是當前方法,而後面就是整個呼叫的回推順序。

這方法不一定要等出錯才可以用,有時候邏輯造成的錯誤比單純程式寫錯的問題還大~


Share:

作者: Chun

WordPress 社群貢獻者、開源社群推廣者。專注於 WordPress 外掛開發、網站效能最佳化、伺服器管理,以及 iDempiere 開源 ERP 導入與客製開發。曾參與 WordCamp Taipei 等社群活動,GitHub Arctic Code Vault Contributor。提供資訊顧問、WordPress 開發教學、主機最佳化與企業 ERP 整合服務。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *


文章
Filter
Apply Filters
Mastodon