ホームページ  >  記事  >  バックエンド開発  >  WindowsおよびLinuxにおけるPHPコードデバッグツールXdebugのインストールと設定の詳細説明_PHPチュートリアル

WindowsおよびLinuxにおけるPHPコードデバッグツールXdebugのインストールと設定の詳細説明_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:30:141285ブラウズ

1. デバッガーが必要な理由

多くの PHP プログラマーはデバッグに echo、print_r()、var_dump()、printf() などを使用します。実際、豊富な開発経験を持つプログラマーにとっては、これらで十分です。特定の変数の値を出力することで、プログラムが正しく実行されているかどうかを判断でき、効率性も確認できます (もちろん、いくつかの時間関数を使用する必要がある場合もあります)。では、なぜプログラムの動作を監視するために特別なデバッガが必要なのでしょうか? この質問に対する答えは、後で明らかになるまで残しておいてもよいでしょう。

2. Xdebug とは何ですか?

Xdebug は、PHP プログラムの実行ステータスを追跡、デバッグ、分析するために使用できるオープンソースの PHP プログラム デバッガー (つまり、デバッグ ツール) です。

3. Windows での XDebug のインストールと構成

1. XDebug バイナリ ファイルをダウンロードします: http://www.xdebug.org/download.php
php のバージョンに応じてダウンロードを選択してください。たとえば:

コードをコピーします コードは次のとおりです。 :
5.2 http://www .xdebug.org/files/php_xdebug-2.1.2-5.2-vc6.dll
5.3 http://www.xdebug.org/files/php_xdebug-2.1.2-5.3-vc6 .dll

2. php.ini ファイルを見つけて開きます
3. ZendOptimizer を設定している場合は、通常は次のように最初に ZendOptimizer 関連の設定をブロックする必要があります:
コードをコピーします コードは次のとおりです。
[Zend]
zend_extension_manager.optimizer_ts=”pathZendOptimizer-3.3.0libOptimizer -3.3.0″
zend_extension_ts=”pathZendOptimizer-3.3.0libZendExtensionManager.dll”

削除するか、セミコロンでコメントアウトして変更してくださいに:
コードをコピーします コードは次のとおりです:
;[Zend]
;zend_extension_manager.optimizer_ts=”pathZendOptimizer-3.3.0libOptimizer-3.3.0″
;zend_extension_ts=”pathZendOptimizer-3.3 .0libZendExtensionManager。 dll」

4. XDebug 設定を追加します。参照は次のとおりです:
コードをコピーします コードは次のとおりです:
[Xdebug]
zend_extension_ts=”path/xdebug/php_xdebug-2.1.2-5.2-vc6.dll”
xdebug.auto_trace= on
xdebug.trace_output_dir= "pathxdebug"
xdebug.profiler_enable=on
xdebug.profiler_output_dir="pathxdebug"
xdebug.collect_params=on
xdebug.collect_return=on
xdebug.remote_enable=on
xdebug .remote_handler=dbgp
xdebug。リモートホスト =ローカルホスト
xデバッグ。リモートポート=9000

手順:
上記の「パス」を独自のローカル パスに変更する必要があります。
パラメータの説明:

コードをコピーします。 コードは次のとおりです:

zend_extension_ts=”c:/webserver/php5 /ext/php_xdebug .dll"
;xdebug モジュールをロードします。ここでは、extension=php_xdebug.dll を使用してロードすることはできません。zend を使用してロードする必要があります。そうしないと、phpinfo はインストール後に xdebug 項目を表示しません。
xdebug.auto_trace=on;
;「関数呼び出し処理の監視」機能モードを自動的にオンにします。この機能では、関数呼び出しの監視情報を指定したディレクトリにファイルとして出力できます。この設定項目のデフォルト値はオフです。
xdebug.collect_params=on;
;「関数パラメータ」を収集する機能をオンにします。関数呼び出しのパラメータ値を関数プロシージャ呼び出しの監視情報に含めます。この設定項目のデフォルト値はオフです。
xdebug.collect_return=on
; 「関数の戻り値」を収集する機能をオンにします。関数の戻り値を関数手続き呼び出しの監視情報に含めます。この設定項目のデフォルト値はオフです。
xdebug.trace_output_dir=
; 関数呼び出し監視情報の出力ファイルへのパスを設定します。
xdebug.profiler_enable=on
; パフォーマンス モニターをオンにします。
xdebug.profiler_output_dir=
;性能監視情報出力ファイルのパスを設定します。

さらに具体的なパラメータ設定もあります。http://www.xdebug.org/docs-settings.php
5. Apache や IIS などの Web サーバーを再起動します
6。 XDebug オプションが表示されたら、構成が成功したことを意味します。
7. デバッグ情報ファイルを表示します。
PHP プログラムをローカルで実行すると、主に次のようなデバッグ情報ファイルが設定されたディレクトリに生成されます。
a. 関数呼び出しプロセス監視情報ファイル、ファイル名の形式:trace.××××××.xt。このファイルは直接表示でき、関数の実行時間、関数呼び出しのパラメータ値、戻り値、ファイルと場所などの情報が含まれています。コンテンツの形式は比較的直感的です。
b. パフォーマンス監視ファイル、ファイル名の形式:cachegrind.out.××××××××。
ファイルは直接表示することもできますが、情報形式は人間には理解しにくいため、wincachegrind ソフトウェアをインストールすると、フォーマットされた形式でファイルを読み取ることができます。 ダウンロードとインストール方法は次のとおりです:
ダウンロード: http://sourceforge.net/projects/wincachegrind/
ダウンロード後、インストールして実行し、[ツール] -> [オプション] をクリックし、作業フォルダー (xdebug.ne​​t の値) を設定します。 php.ini の profiler_output_dir)
このようにして、パフォーマンス監視ファイルの情報をより直感的に表示できます。

4. Linux での XDebug のインストールと構成

ソースコードをダウンロードし、Linux 上でコンパイルしてインストールできます。方法は次のとおりです。
1. PHP バージョンに対応するソースコードソースをダウンロードします: http://www.xdebug.org/download.php
例: xdebug-2.1.2.tgz バージョン: http://www.xdebug.org/ files/xdebug- 2.1.2.tgz
2. コンパイルしてインストールします

コードをコピーします コードは次のとおりです:
tar -xvzf xdebug-2.1.2.tgz
cd xdebug-2.1.2
./configure
make
make install

phpize にこのコマンドがないというエラーがある場合は、それをインストールします:
コードをコピーします コードは次のとおりです:
sudo apt-get install php5 -dev

3. xdebug.so ファイルを php5 の下に移動します
コードをコピーします コードは次のとおりです:
cp modules/xdebug.so /usr/lib/php5/

4. php を編集します。 .ini を開き、次の行を追加します:
コードをコピーします コードは次のとおりです:
[Xdebug]
zend_extension= /usr/lib/php5/xdebug.so
xdebug.profiler_enable=on
xdebug。 trace_output_dir=”../xdebug”
xdebug.profiler_output_dir=”../xdebug”

5. Apache を再起動し、インストールが成功したかどうかをテストします

出力に xdebug が表示された場合は、インストールと構成が成功したことを意味します。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/767087.html技術記事 1. なぜデバッガーが必要なのでしょうか? 多くの PHP プログラマーは、デバッグに echo、print_r()、var_dump()、printf() などを使用します。実際、豊富な開発経験を持つプログラマーにとっては、これらで十分です。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。