php.ini配置
zend_extension=D:\xampp\php\ext\php_xdebug.dll (Win)
zend_extension= /usr/lib/php5/20090626+lfs/xdebug.so (Linux)
xdebug.profiler_enable=on
xdebug.trace_output_dir="../Projects/xdebug"
xdebug.profiler_output_dir="../Projects/xdebug"
xdebug.profiler_output_name = "cachegrind.out.%c"
xdebug.collect_params = '3';//trace中收集的函數參數
xdebug.trace_format=2; //trace文件格式爲html
xdebug.trace_options=1;//追加trace日誌,0:覆蓋日誌
參數設置
配置參數選項 | 參數值類型與默認值 | 參數選項描述 |
---|---|---|
xdebug.auto_trace | boolean類型,默認值=0 | 是否在腳本運行之前自動調用相關追蹤函數。 |
xdebug.cli_color | integer類型,默認值=0 | 該參數自2.2版本開始引入。如果值=1,當處於CLI模式或連接虛擬控制檯時,Xdebug將高亮顯示var_dumps()和堆棧輸出,;在Windows中,這需要安裝ANSICON工具。如果值=2,不管是否處於CLI模式或連接虛擬控制檯,Xdebug都會高亮顯示var_dumps()或堆棧輸出;這種情況下,你可能會看到轉義後的代碼。 |
xdebug.collect_assignments | boolean類型,默認值=0 | 該參數自2.1版本開始引入。用於控制是否爲函數跟蹤添加變量賦值功能。 |
xdebug.collect_includes | boolean類型,默認值=1 | 控制是否在跟蹤文件中寫入include()、include_once()、require()、require_once()等函數中用到的文件名。 |
xdebug.collect_params | integer類型,默認值=0 |
控制在調用函數時,是否收集傳遞給函數的參數信息。如果參數值過大,這可能會佔用大量的內存;不過,在Xdebug 2中不會出現該問題,因爲Xdebug 2將相關數據寫入磁盤中,而不是佔用內存。
如果值=0,則不顯示任何信息。
如果值=1,只顯示類型和大小信息,例如:string(6)、array(8)。
如果值=2,將顯示類型和大小,以及全部信息的工具提示。
如果值=3,將顯示變量的全部內容。
如果值=4,將顯示變量的全部內容和變量名。
|
xdebug.collect_return | boolean類型,默認值=0 | 控制是否在追蹤文件中寫入函數調用的返回值。 |
xdebug.collect_vars | boolean類型,默認值=0 | 控制是否收集指定作用域中的變量信息。由於需要反向工程PHP的操作碼數組,因此Xdebug的分析速度可能比較慢。 |
xdebug.coverage_enable | boolean類型,默認值=1 | 該參數自2.2版本開始引入。控制是否允許通過設置內部結構來啓用代碼覆蓋率功能。 |
xdebug.default_enable | boolean類型,默認值=1 | 當發生異常或錯誤時,是否默認顯示堆棧信息。 |
xdebug.dump.* | string類型,默認值=Empty |
這裏的*可以是COOKIE, FILES, GET, POST, REQUEST, SERVER, SESSION中的任意一個。用於指定發生錯誤時是否顯示超全局變量數組中的索引變量信息。比如,你想要顯示請求的IP地址和請求方式,可以設置爲
xdebug.dump.SERVER=REMOTE_ADD,REQUEST_METHOD
多個索引變量用英文逗號隔開,如果要輸出其中的所有變量,可以直接用*,例如:
xdebug.dump.GET=*
|
xdebug.dump_globals | boolean類型,默認值=1 | 控制是否顯示通過xdebug.dump.*定義的所有超全局變量的信息。 |
xdebug.dump_once | boolean類型,默認值=1 | 如果出現多個錯誤,控制超全局變量信息是在所有錯誤中顯示,還是隻在第一個錯誤中 |
xdebug.dump_undefined | boolean類型,默認值=1 | 控制是否顯示超全局變量中未定義的值 |
xdebug.extended_info | integer類型,默認值=1 | 是否強制進入PHP解析器的"extended_info"模式,這將允許Xdebug以遠程調試器對文件或行添加斷點。開啓此模式將拖慢腳本的允許速度,該參數只能在php.ini中設置。 |
xdebug.file_link_format | string類型,默認值=, | 自2.2版本開始引入。用於指定堆棧信息中用到的文件名稱的鏈接樣式,這允許IDE通過設置鏈接協議,直接點擊堆棧信息中的文件名稱,即可快速打開指定的文件。例如:ZendStudio://%f@%l(%f表示文件路徑,%f表示行號)。 |
xdebug.force_display_errors | integer類型,默認值=0 | 自2.3版本開始引入。是否強制顯示錯誤信息。 |
xdebug.force_error_reporting | integer類型,默認值=0 | 自2.3版本開始引入。是否強制顯示所有錯誤級別的信息。 |
//跟蹤調用棧,函數的調用情況
xdebug_call_class();
xdebug_call_function();
xdebug_call_file();
xdebug_call_line();
//到這一點爲止關於函數調用信息
xdebug_get_function_stack();
//確定某個腳本兩點之前調用過所有函數和方法
xdebug_start_trace();
xdebug_stop_trace();
//當前內存的使用情況
xdebug_memory_usage();
xdebug_peak_memory_usage();
//腳本的總執行時間
xdebug_time_index();
//檢測代碼覆蓋和代碼是否被執行
xdebug_start_code_coverage();
xdebug_stop_code_coverage();
xdebug_get_code_coverage();
//斷點
xdebug_break();