頁面Trace隻能用于有頁面輸出的情況,但是trace方法可以用在任何情況,而且trace方法可以用于AJAX等操作。
Trace方法的格式:
trace('變量','标簽','級别','是否記錄日志')
例如:
<code>$info = '測試資訊';</code>
<code>trace($info,'提示');</code>
如果希望把變量調試輸出到頁面Trace的某個頁籤裡面,可以使用:
<code>trace($info,'提示','user');</code>
表示輸出到user頁籤,如果沒有指定頁籤的話,預設會輸出到debug頁籤。 trace方法也可以直接抛出異常,如果是輸出到ERR頁籤,并且開啟 <code>'TRACE_EXCEPTION'=>true</code>
的話,
<code>trace($info,'錯誤','ERR');</code>
會抛出異常。 有三種情況下,trace方法會記錄日志:
AJAX請求
SHOW_PAGE_TRACE為false,也就是頁面Trace關閉的情況下
trace方法的第四個參數為true
在這種情況下,trace方法的第三個參數就表示記錄的日志級别,通常包括:
<code>'ERR' // 一般錯誤: 一般性錯誤</code>
<code>'WARN' // 警告性錯誤: 需要發出警告的錯誤</code>
<code>'NOTIC' // 通知: 程式可以運作但是還不夠完美的錯誤</code>
<code>'INFO' // 資訊: 程式輸出資訊</code>
<code>'DEBUG' // 調試: 調試資訊</code>
<code>'SQL' // SQL:SQL語句</code>
憑借強大的頁面Trace資訊功能支援,ThinkPHP可以支援斷點調試功能。 我們隻需要在不同的位置對某個變量進行trace輸出即可,例如:
<code> $blog = D("Blog");</code>
<code> $vo = $blog->create();</code>
<code> trace($vo,'create vo');</code>
<code> $vo = $blog->find();</code>
<code> trace($vo,'find vo');</code>