0x01のXdebugのプロフィール
Xdebugのは、オープンソースのPHPデバッガです
0x02のXdebugの設定
ジャーナル
xdebug.trace_output_dir: トレース出力ディレクトリログ はXdebugを。trace_output_name ログファイル名、Xdebugの識別子のシリーズを提供し、フォーマット対応するファイル名生成 はXdebugを。trace_optionsあり :レコードは、ファイルモードに追加 1 =追記(ファイルが存在する場合)。 0(デフォルト)=報道(ファイルが存在する場合)
表示データ
**はXdebugはcollect_params 非ゼロ = 機能表示オプションの制御パラメータ 0 -------- 表示されない 。1 --------パラメータタイプ、値(例えば:配列(9))。 2- ------- 1と、CLIにのみわずかに異なる 。3 -------- すべての変数の内容を 4 -------- すべての変数名と変数の内容 はXdebug。collect_return 1- -------表示関数の戻り値。デフォルト 0 は表示されません -Xdebugが。collect_vars 1 --------は、変数名を表示し、変数を使用するかの現在のスコープを表示し、このオプションの値は、変数を記録しません。 Xdebugの**。collect_割り当て 1 --------変数の割り当てを表示するには、行を追加します。
トラックログ出力ディレクトリ
Xdebugの。trace_format 0 ------------------- 人間が読める 1 ------------------- 機械可読 2 ------------------- HTML形式
行動
追跡する2つの方法があり、一つは、トレース・ファイルが生成されます、すべてのPHPスクリプトが実行されているトラックに自動的にあり、他のトリガートラックであります
。はXdebug auto_trace 1 --------------- 自動的に追跡オープン Xdebugの。trace_enable_triggerの 注意:この機能は、2である .2+ 設定するために、バージョン ----------- 1 -------使用XDEGUG_TRACE GET / POSTのトリガートラック、または適切なトレースのトレースファイルを生成しますすべての要求を避けるために、クッキーXDEGUG_TRACEを設定することにより、あなたは0に設定する必要がありますauto_trace
0x03のxdebugのデバッグログ
デバッグの行にブレークポイントをマーク、プログラムがブレークポイントまで実行したとき、プログラムは銀行に滞在することに留意すべきである(行番号の後ろに空白をクリックし、再びブレークポイントを解除するポイント)が、銀行自体は実行されません。あなたはすべてのデータを見ることができるので、プログラムは、ここに含まれるまで実行されます。もちろん、のvar_dumpに情報を表示するために、PHPの関数を使用して相当。
ショートカットボタン:
第一个按钮:step over 步越
执行当前函数的下一步,如果有子函数,也不会进入,会一直执行到函数结束
第二个按钮:step into 步入
执行当前函数的下一步,如果有子函数,会从头到尾执行子函数,还原了程序执行的最详细的路线,从构造函数到结尾的每一步都会跳到。
第三个按钮:force step into
与step into 相同,执行当前函数的下一步,如果有子函数也会进入子函数,只不过不会从头到尾的还原函数执行的路线,会直接跳到子函数内第一步,构造函数等一些前置方法会忽略
第四个按钮:step out 步出
跳出当前执行的函数,跳到父函数的下一步。
第五个按钮:run to cursor
执行到下一个断点处
Xdebug的其他作用
很明显,有了xdebug我们不再需要在代码调试时对一些关键变量一个一个echo或var_dump了,而且我们可以使程序运行到断点时挂起,从而更加精确地锁定出bug的代码的位置。同时Xdebug具有追溯代码的跟踪回溯功能,这样在一些大型的程序的中,即使调用逻辑很复杂,我们也能顺蔓摸瓜一步步到达错误发生的地方。
除此之外,我们可以使用xdebug_time_index()来显示脚本运行时间;可以使用xdebug_memory_usage()来测定脚本占用内存;同时我们还可以查询xdebug的输出日志来查询程序运行的相关信息。
Xdebug自带了一个函数xdebug_time_index()来显示时间。