ホームページ >バックエンド開発 >PHPチュートリアル >Vim は Linux 上で PHP リモートデバッグ環境を実現します

Vim は Linux 上で PHP リモートデバッグ環境を実現します

WBOY
WBOYオリジナル
2016-06-20 12:40:051000ブラウズ

まず、必要なコンポーネントのインストールです。

vim の DBGp プラグイン、php の xdebug 拡張機能、Chrome ブラウザの xdebug ヘルパー拡張機能の 3 つがあります。

1: vim dbgp クライアント プラグインのインストール DBGp クライアントのダウンロード

$ cd ~/.vim/$ wget http://www.vim.org/scripts/download_script.php?src_id=7285 -O debugger.zip$ unzip debugger.zip

2: PHP の xdebug 拡張機能のインストール

具体的なインストール方法については説明しません。公式のインストール手順はたくさんあります。

というコメントがあります。ここで、プロファイルとトレースは自動的にオンにならないことに注意してください。これは、各リクエストに対応する情報が保存され、ディスクがパンクするためです。トリガーをオンにすると、リクエストに特定の情報が含まれている場合にのみ、対応するパフォーマンス情報が記録されます。トリガーの実装メカニズムは次のとおりです。リクエスト中に、GET/POST/COOKIE 情報に特定の変数が含まれている場合、対応するデバッグ、プロファイル、またはトレースがオンになり、Web のページにアクセスするときに対応する変数を追加できます。 . 対応する機能をオンにします。これを毎回自分で繋ぎ合わせるのはかなり面倒なので、後ほどxdebug helperのchrome拡張機能を紹介しますが、任意の機能を有効にしたいときは拡張機能をクリックするだけです。つまり、この拡張機能はデバッグには必要ありませんが、使用すると非常に便利になります。

[Xdebug]zend_extension="/home/s/apps/php-5.2.6/lib/php/extensions/no-debug-non-zts-20060613/xdebug.so"xdebug.profiler_enable=0    ;开启profilexdebug.profiler_enable_trigger=1    ;使用触发器开启profilexdebug.profiler_output_dir="/home/s/logs/xdebugLog"xdebug.auto_trace=0     ;开启tracexdebug.trace_enable_trigger=1   ;使用触发器开启tracexdebug.trace_output_dir="/home/s/logs/xdebugLog"xdebug.cli_color=1xdebug.collect_params=2xdebug.collect_return=on      ;remote debug   ;开启远程调试xdebug.remote_enable=1xdebug.remote_autostart=Offxdebug.remote_port=9000 ;远程端口,不是你web服务的端口,如果没有冲突,一般不用修改。
3: Chrome 拡張機能 xdebug ヘルパー アドレス: https://chrome.google.com/webstore/detail/xdebug-helper/eadndfjplgieldjbigjakmdgkmoaaaaoc chrome://apps で xdebug ヘルパーを検索しても見つかりません。忘れずに言語を英語に変更してください。

の値は 1 で、保存されます。

2 番目はドメインのホワイトリストです。すべてのページにデバッグ アイコンを表示したくない場合は、開発時にドメイン名を入力します (localhost Shenma など)。実際、アイコンは非常に小さくて邪魔にならないため、設定する必要はありません。

の使用を開始します。

デバッグはしたくないが、パフォーマンスの問題を確認するためにプロファイルとトレース情報を記録するだけであれば、非常に簡単です。 chrome で対応する URL に直接アクセスすると、URL の右側に xdebg ヘルパーの小さなアイコンが表示され、それをクリックしてプロファイルまたはトレースを選択し、更新すると、プリセット ディレクトリに対応するファイルが表示されます。 。 cachegrind* はプロファイル ファイル、trace* はトレース ファイルです。

Windows で WinCacheGrind を使用すると、プロファイル情報を簡単に表示できます。

xdebug_helper_debug_profile_trace

xdebug_output_file_trace_profile

winCacheGrind_output

最後に、

リモート デバッグを有効にする方法

編集vim プログラム ファイルの場合は、:Bp コマンドを使用して、中断する必要がある場所にブレークポイントを置きます。次に、F5 を押してモニタリングを実行します。 この時点で、vim はポート 9000 での新しい接続を 5 秒間待機するようプロンプトを表示します。そのため、この時点で、前の URL アドレスで 5 秒以内にサーバーへの割り込みを伴うリクエストを開始する必要があります。 xdebug ヘルパーのデバッグを入れます。それを選択してページを更新すると、vim が中断に入ります。右側に関連するプロンプトがあり、GDB メソッドに従って段階的にデバッグできます。 xdebug ヘルパーがインストールされていない場合でも、パラメータを URL: &XDEBUG_SESSION_START=1 に手動で結合して、リモート デバッグを有効にすることができます。 xdebug_remote_debug_how

転載元: http://digdeeply.org/archives/tag/dbgp

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。