2012-02-09 58 views
0

我正在使用* xdebug_start_trace *和xdebug_stop_trace with trace_format 1.我得到的輸出不是從1開始函數編號,而且入口也不是從零開始。這裏是前三行跟蹤日誌:Xdebug跟蹤格式1輸出

TRACE START [2012-02-09 00:55:43] 
2 162 1 0.038159 820608 
2 163 0 0.038272 821720 require_once 1 /Users/kint/dev/proj/source/f.inc /Users/kint/dev/proj/www/test.php 72 
2 163 1 0.038286 821720 

不應該的功能#(第2列),從1開始(而不是162),且不應第一"entry/exit"值是0?我究竟做錯了什麼?這搞亂了我的分析。

附錄: 看起來函數編號是執行開始位置的絕對值。如果我把* xdebug_start_trace *放在文件的中間,並且我得到了162的值。但是,如果我將xdebug_start_trace向上移動,則函數編號會減少。既然這似乎是答案,我想知道是否有辦法重置這個計數?

回答

0

Xdebug從腳本啓動時開始計算函數,所以以162開頭的跟蹤文件是完全正確的。您看到的第一個出口(162:1)來自xdebug_start_trace()函數本身(可以將其定義爲我想的錯誤)。 沒有辦法如何將數此刻復位,但你當然可以總是在http://bugs.xdebug.org/my_view_page.php

歡呼添加功能請求, 德里克