百見は、一聞にしかず

見てもわからない事は、とりあえず聞いてみよう。

EclipseでPHPをデバッグする(Xdebugを使用)

記事を書くのは寝る前に、タブレットをもって布団の中で書くことが多いのですが、昨日は録画していた映画を見ていて気づいたら日をまたいでいました。

これでまた連続投稿がリセットされましたね。残念。

見ていたのは「俺物語」でした。面白かったので良しとします。。。

 

今日は「EclipsePHPデバッグする(Xdebugを使用)」について書きたいと思います。

PHPEclipseで開発している際にデバッグが出来るととても効率が上がりますね。
この処理を通ると値はどの様に変わっているのかなというのを知りたいときは脳内で追っていくには限界がありますよね、はい、デバッグに限ります。
今日はXdebugを利用したデバッグについて書きます。

■動作環境

【サーバ】
 ・Windows Server 2008 R2 ・IIS 7.0 ・PHP 5.6.21 ・Wordpress 4.5

【ローカル】
 ・Windows 7 64bit ・Eclipse 4.5.2 Mars.2(PHP)


PHPの設定
①まず以下のURLより、対象のDLLファイルをダウンロードし、php\extに保存します。
 URL http://www.xdebug.org/download.php
 保存先の例)C:\php\ext\php_xdebug.dll

php.iniの一番下に以下を追加します。
[XDebug]
zend_extension=php_xdebug.dll
xdebug.remote_connect_back=On
xdebug.remote_enable = 1
xdebug.remote_host = "localhost"
xdebug.remote_port = 9000

 

ここまででphpinfo()を確認すると以下の図のようなXdebugという項目が追加されていることがわかります。

f:id:lbblue:20170117151042p:plain

 

Eclipseの設定
「実行」→「デバッグの構成」をクリックし、以下のように設定します。
 ①サーバータブ
 ・PHPサーバー : Default PHP Web Server
 ・ファイル : /index.php
 ・自動生成は未チェック


 ②デバッガータブ
 ・デバッガー : xDebug
 ・最初の行でブレークは未チェック
 ・Debug Through SSH Tunnelは未チェック
 ・ポート : 9000
 ・プロキシーの使用は未チェック

f:id:lbblue:20170117151810p:plain


 ③共通タブ
 ・「ローカル・ファイル」を選択
 ・「デバッグ」にチェック
 ・「デフォルト - 継承」を選択
 ・「コンソールに割り当て」にチェック
 ・「バックグラウンドでの起動」にチェック
設定が全て終わったら、「適用」をクリックします。


 ④外部ブラウザの設定
 ・「ウィンドウ」→「設定」をクリックします。
 ・設定画面で「一般」→「Webブラウザー」をクリックし、「外部Webブラウザーを使用」を選択し、対象のブラウザ(例:Chrome)をチェックします。
 ・「適用」ボタンをクリックします。


 ⑤文字コードの設定
 ・設定画面で「一般」→「ワークスペース」をクリックし、テキスト・ファイル・エンコードの「その他」を選択し、「UTF-8」を選択します。

ファイアウォールの設定
 ポート番号9000を開けます。

設定は以上です。
あとはブレークポイントを貼って実行して、、、ちゃんと止まりますかね。