xdebug を使用して PHP をデバッグし、PHP プログラムのボトルネックを見つける_PHP チュートリアル

WBOY
リリース: 2016-07-21 14:53:57
オリジナル
980 人が閲覧しました

xdebug は PHP の拡張アプリケーションです。xdebug を使用すると、<font style="BACKGROUND-COLOR: #eaeaea" face="NSimsun">var_dump()</font><font style="BACKGROUND-COLOR: #eaeaea" face="NSimsun">print_r()</font> のような愚かなデバッグ関数を使用する必要がなくなります。
Xdebug はより多くの機能を提供し、あらゆる面で PHP スクリプトをデバッグできます。 Xdebug主な機能は次のとおりです:

  1. スタックトレースと関数トレース
  2. エラーメッセージ
  3. メモリ割り当て
  4. PHP スクリプト情報を分析します。
  5. コードカバレッジ分析
  6. リモートデバッグ分析
1. Ubuntu上でxdebugデバッグ環境をセットアップします

Xdebugモジュールをインストールする

apt-getを使用してターミナルにxdebugをインストールします。コマンドは次のとおりです

sudo apt-get install php5-dev php-pear

sudo apt-get install php5-xdebug

次に、php.ini ファイル (例: gedit /etc/php5/apache2/php.ini) を開きます。次のように設定します。

;xdebug ダイナミック リンク ライブラリをロードします
extension=xdebug.so

;xdebug 分析ファイルの出力パス
xdebug.profiler_output_dir = "/var/www/xdebug/"
;分析中に XDEBUG_PROFILE を URL に追加します。デバッグ =true
xdebug.profiler_enable = オフ
xdebug.profiler_enable_trigger = 1

xdebug を使用して PHP をデバッグできるように、Apache を再起動します。

2. Windows に xdebug をインストールします

PHP5.1.4、Windows プラットフォームを例に挙げます (他の PHP バージョンについては、他のプラットフォームの公式 Web サイトのドキュメントを参照してください)。

1. www.xdebug.org にログインし、ホームページの右側に Windows モジュールがあり、PHP5.1.2+ を選択して、php_xdebug-5.1.2-2.0.0beta6.dll ファイルをダウンロードします。2. ダウンロードした php_xdebug-5.1.2-2.0.0beta6.dll を C:php5ext ディレクトリに配置し、名前を php_xdebug.dll に変更します。 php.ini を編集し、次の行を追加します:



extension=php_xdebug.dll
[Xdebug]

xdebug.profiler_enable=on
xdebug.trace_output_dir=”I:Projectsxdebug”

xdebug.profiler_output_dir=”I:Projectsxdebug”
xdebug.dump.GET=*
x debug.show_local_vars= 1


特定のパラメータ PHP.ini の説明については、ubuntu のコメントを参照してください。

3. PHP のデバッグには xdebug を使用します

xdebug デバッグ変数がより使いやすくなりました

Xdebugはphpの

関数を書き換えます。 xdebug の Var_dump() は、変数オブジェクトにさまざまな色を与え、型の長さを表示し、表示レベルを制御することもできます。この表示方法はフォーマットされており、明確でわかりやすいです。

この機能を使用するには、次のパラメータに注意する必要があります。

<font style="BACKGROUND-COLOR: #eaeaea" face="NSimsun">var_dump()</font>

;php で関数 var_dump() をオーバーライドするかどうか。デフォルトはオン、値は 1 に設定されます。

xdebug.overload_var_dump = 1

;コントロール配列の子要素の表示のデフォルトのサイズは次のとおりです。 256

xdebug.var_display_max_children = 256
;変数印刷のサイズを制御します。デフォルトは 512 です

xdebug.var_display_max_data = 512
;配列およびオブジェクト要素の表示レベルを制御します。デフォルトは 3
xdebug.var_display_max_ Depth = 3


xdebugのスタックトレース機能

スクリプト内に不正な関数パラメーター、メソッドの繰り返し、構文エラー、その他のエラーがある場合。 xdebug はエラー生成のプロセスをトレースできます。

パラメータの設定については、

http://xdebug.com/docs/stack_trace

を参照してください。一般に、設定が必要になることはほとんどありません。

4. スクリプトのパフォーマンステストには xdebug を使用します

php.iniに以下の設定を行います

; デフォルトは 0 で、xdebug デバッガは有効ではありません。

xdebug.profiler_enable = 0

; デフォルトは 0 に設定されており、XDEBUG_PROFILE パラメータを通じて GET/POST で渡すことができます

xdebug.profiler_enable_trigger = 1


テストパフォーマンス結果閲覧ツール

テストが完了したら、テスト結果を確認してPHPのボトルネックを見つける必要があります。

ここでは 2 つの表示ツールをお勧めします。
KCachegrind

は ubuntu で使用でき、

WinCacheGrind
は Windows で使用できます。 xdebug テスト結果ツールの使用方法を具体的に確認するには、Google で確認することができます。これは非常に簡単です。電子テキストについて少し知っていれば理解できます。 5. xdebug の使用に関する注意事項と関連パラメーターの説明 xdebug使用上の注意事項

phpinfo() の出力に

Xdebug

セクションが表示されない場合は、Xdebug の読み込みが失敗しています。 Apache エラー ログに理由がリストされています。一般的なエラーには、zend_extension への間違ったパスや他の拡張機能との競合が含まれます。たとえば、XCache と Xdebug を使用する必要がある場合は、必ず最初に XCache をロードしてください。ただし、Xdebug は開発中に使用することを目的としており、xdebug.so へのパスが正しいことを前提としているため、他の拡張機能を無効にして再試行する必要があります。その後、拡張機能を再度有効にして、キャッシュの影響などの追加のテストを実行できます。

Xdebug サイトには、その他のトラブルシューティングのヒントがいくつかあります。

xdebug関連のパラメータ設定

xdebug.default_enable

タイプ: ブール値 デフォルト値: On
これが On に設定されている場合、スタック トレースはデフォルトでエラー イベントに表示されます。コード内で xdebug_disable() を使用すると、スタック トレースの表示を無効にできます。これは xdebug の基本機能の 1 つであるため、このパラメータを On に設定することが賢明です。

エキサイティングなコンテンツ、次のページをクリックしてください!

  • 合計 2 ページ:
  • 前のページ
  • 1
  • 2
  • 次のページ

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/364700.html技術記事 xdebug は PHP の拡張アプリケーションであり、これを使用すると、var_dump() や print_r() などの愚かなデバッグ関数を使用する必要がなくなります。 Xd...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート