PHPStormとXdebugを使用してLaravelをデバッグする(一)
2403 ワード
環境システムバージョン:OSX 10.11.4 PHPバージョン:7.0.5 Xdebugバージョン:2.4.0 Laravelバージョン:5.1.31 PHPStormバージョン:10.0.4
Xdebug構成
ネイティブのXdebugプロファイルは
ファイルを開いて、次のコードを追加します.
PHPStorm構成
PHPStormを開き、まずPHPの使用バージョンとInterpreter
PHPの使用バージョンの設定 PHP language level:PHPの使用バージョン を選択 Interpreter:PHP実行可能ファイルを構成する場所 PHP実行可能ファイルの場所の設定 Name:名前 PHP executable:PHP実行可能ファイルの場所、本機はHomebrewがインストールしたPHPを使用し、位置は である.
次にPHP Debug時のポートを設定し、ポート
Debugポートの構成
次に
Run => Edit configurations
PHP Web Application Name:名前 Server:サーバ、次の図に従って を作成していません Start URL:Debugを開始するURL オプションに従って
Server Name:名前 Host:ホスト、私はローカルでDebugを必要とするプロジェクトを にマッピングします. Port:ポート Debugger:XdebugのほかにZend Debuggerがあります.Xdebug を選択します.
ブレークポイントを設定し、
ブレークポイントの設定
Debug Cowcat
ブラウザが指定URL(つまりPHP Webアプリケーション構成時のStart URL)を実行すると、Xdebugコンソールが表示され、コンソールの情報と操作に基づいてDebugが行われる
Xdebugコンソール
コンソールの機能は次のとおりです.左側の緑色三角形: 左側の赤い四角形: の上の最初のグラフ: の上の2番目のグラフィックは、 の上の3番目のグラフィックは、 の上の4番目のグラフィックは、 の上の5番目の図: Variables:すべてのグローバル変数、現在のローカル変数の値 が観察できる Watches:変数を追加し、プログラムの実行に伴う変数の変化を観察できます.
Xdebug構成
ネイティブのXdebugプロファイルは
/usr/local/etc/php/7.0/conf.d/ext-xdebug.ini
にありますファイルを開いて、次のコードを追加します.
[xdebug]
zend_extension="/usr/local/Cellar/php70-xdebug/2.4.0/xdebug.so"
xdebug.idekey=PHPSTORM
xdebug.remote_enable=1
xdebug.remote_host=localhost
xdebug.remote_port=10000
xdebug.profiler_enable=1
xdebug.profiler_output_dir="/Users/LuisEdware/Downloads/Xdebug"
PHPStorm構成
PHPStormを開き、まずPHPの使用バージョンとInterpreter
Preferences => Language & Frameworks -> PHP
を構成するPHPの使用バージョンの設定
/usr/local/Cellar/php70/7.0.5/bin/php
次にPHP Debug時のポートを設定し、ポート
9000
を10000
に変更するDebugポートの構成
次に
Run => Edit configurations
を修正し、ポップアップウィンドウの左上隅にプラス記号をクリックし、PHP Web Application
を追加します.Run => Edit configurations
PHP Web Application
Server
を追加Server
cowcat.app
上のブレークポイントを設定し、
Run => Debug 'Cowcat'
を実行ブレークポイントの設定
Debug Cowcat
ブラウザが指定URL(つまりPHP Webアプリケーション構成時のStart URL)を実行すると、Xdebugコンソールが表示され、コンソールの情報と操作に基づいてDebugが行われる
Xdebugコンソール
コンソールの機能は次のとおりです.
Resume Program
は、次のブレークポイントが停止するまで実行を続行することを示します.Stop
は、現在のプログラムデバッグを中断していることを示します.Step Over
、現在の関数をスキップします.Step Into
で、現在の関数の内部に入るプログラム(観察プログラムが一歩一歩実行されることに相当)を示しています.Force Step Into
で、現在の関数の内部に強制的に入るプログラムを示しています.Step Out
で、現在の関数の内部のプログラムから飛び出します.Run to Cursor
、現在のカーソルに位置します.