環境によっては、これからインストールしようとしているPHPエクステンションが、すでにインストールしてあるということもあります。インストール前に、これからインストールするPHPエクステンションがインストール済みでないかどうかを確認しましょう。
エクステンションがインストールしてあるかどうかを確認する方法は2つあります。1つ目はコマンドラインを使う方法。もう1つはPHPの関数を使う方法です。コマンドラインで確認するには「php」コマンドに「-i」オプションを付けて実行します。具体的には、以下の通りに入力してEnterキーを押してください。
$ php -i
コマンドを実行すると、結果がコマンドシェルに現れます。例えば、この中に「xdebug」という項目が見つかったら、すでにXDebugがインストール済みであるということです(図2)。
PHPの関数を使って、エクステンションがインストール済みであるかどうかを調べるには、phpinfo()関数を使います。具体的には、下記の1行だけを記したファイルを作成し、拡張子「.php」を付けて保存してください。その後、Webブラウザでこのファイルを参照すると、インストール済みのエクステンションを示すWebページが見られます(図3)。
<?php phpinfo() ?>
PECLパッケージの管理にはpeclコマンドを使います。使い方は、pearコマンドと同じです。早速、XDebugをインストールしてみましょう。下記のようにコマンドを入力して実行してください。
# pecl install xdebug
実行すると、パッケージをダウンロードし、自動的にビルド作業が始まります。コンピュータの性能が低いと、このビルド作業に時間がかかることがあります。図4のような結果になればビルド成功です。
ビルドの結果、生成された「xdebug.so」は、上記の例では「/usr/lib/php5/20090626+lfs/」ディレクトリに存在します。このディレクトリはPHPエクステンションを格納するディレクトリで、エクステンションディレクトリと呼びます。念のため、ファイルが確かに存在することを確認しておきましょう。Linuxなら、下記のコマンドで確認できます。
$ls -la /usr/lib/php5/20090626+lfs/xdebug.so-rw-r--r-- 1 root root 622444 Mar 20 22:31 /usr/lib/modules/xdebug.so
Windows環境でXDebugをビルドするには、PHP本体のビルドに使ったものと同じコンパイラを使う必要がある上、ほかにも複雑な手順を踏まなければならないなど一筋縄ではいきません。自信のない人はXDebug公式サイトにWindows用バイナリがあるので、こちらを利用するとよいでしょう。
ただし、Windows用のバイナリには同じエクステンションでも数種類あり、利用しているPHPのバージョンや環境に合わせて正しいものを選ぶ必要があります。どれを選べばよいか分からない場合は、こちらのWebページに、先ほどのphpinfoの実行結果をコピー&ペーストし、「Analyse my phpinfo() output」ボタンをクリックしてください。サーバが現在の状態を解析し、インストール方法を示してくれます。
ダウンロードしたWindows用XDebugは、PHPのエクステンションディレクトリにコピーします。エクステンションディレクトリの場所を調べるには、先ほど作ったphpinfo()関数を実行するファイルをWebブラウザで実行しましょう。「extension_dir」以降に書いてあるディレクトリがエクステンションディレクトリです。
Copyright © ITmedia, Inc. All Rights Reserved.