http://www.backyrd.net/entry/20140518/1400420640 の続き。
EclipseでPHPのプログラムをデバッグするツールとしてXdebugというのがあるようなんですが……いろいろ設定が必要なんですね。とりあえずやってみる。
Xdebugをダウンロードする
今回、PHPのバージョン 5.4を使っているので、下記URLの「PHP 5.4 VC9 TS (32 bit)」をダウンロードします。名前についている「TS」は「Thread Safe」の略のようです。複数スレッドでの動作を保証するバージョン、今回使っているWebサーバー Apacheもマルチスレッド対応らしいのでTS版を利用します。
- Xdebug Download
- http://www.xdebug.org/download.php
ダウンロードすると、いきなりDLLファイルがダウンロードされます。ファイル名は「php_xdebug-2.2.5-5.4-vc9.dll」。これをPHPの拡張ライブラリフォルダに置くようですね。
DLLを配置して設定する
フォルダ名は、PHP一式を置いたフォルダにある「ext」フォルダ。今回、PHPのファイル一式は「c:\work\php」に置いたので、自分の環境の場合は「C:\work\php\ext」になるようです。
……で?で?どうするの?
よく分からないので基本に立ち返って、Xdebugのドキュメントにある「Installation」のところを観てみましょう。
- Xdebug Documentation / Installation
- http://www.xdebug.org/docs/install
ここの「Precompiled Windows Modules」のところに「Follow these instructions」というリンクがあるので、「http://www.xdebug.org/wizard.php」に飛んでみると……。phpinfo()が出すWebページの内容をコピペして貼り付けろ……と。phpinfo()を出力するページをササっと作り、ブラウザで表示。内容をマウスでドラッグしてコピー、上記ページのテキストボックスに貼付して「Analyze my phpinfo() output」をクリックするとこんな表示が。
Tailored Installation Instructions Summary Xdebug installed: no Server API: Apache 2.0 Handler Windows: yes - Compiler: MS VC9 - Architecture: x86 Zend Server: no PHP Version: 5.4.28 Zend API nr: 220100525 PHP API nr: 20100525 Debug Build: no Thread Safe Build: yes Configuration File Path: C:\Windows Configuration File: C:\work\php\php.ini Extensions directory: C:\work\php\ext Instructions 1. Download php_xdebug-2.2.5-5.4-vc9.dll 2. Move the downloaded file to C:\work\php\ext 3. Edit C:\work\php\php.ini and add the line zend_extension = C:\work\php\ext\php_xdebug-2.2.5-5.4-vc9.dll 4. Restart the webserver
さっき書いたPHPのパスなんかも全部含めて手順を出してくれるとか、なんとも素晴らしいサービス、というかこういう手順書の提示方法もおもしろいですね。
で本題。DLLのダウンロードは行って、DLLのコピーもしました。次はphp.iniに「zend_extention = (DLLフルパスファイル名)」という記述を追記してApache再起動、ということですね。やってみます。再度phpinfo()を表示してXdebugのロードが確認できればOK。
できた。とりあえずライブラリの読み込みは成功。ちなみに「間違えて非スレッドセーフ(ファイル名末にntsがつく)」を読ませたり、ファイル名やパスが違っても駄目なので気をつけて。
EclipsePDTではじめるPHPプログラミング入門PHP5/PDT3対応
- 作者: 掌田津耶乃
- 出版社/メーカー: 秀和システム
- 発売日: 2013/09/24
- メディア: 単行本
- この商品を含むブログ (1件) を見る