3ステップでXAMPP 7.xにXDebugをインストール

ホーム > テクニカル > PHP > 3ステップでXAMPP 7.xにXDebugをインストール


こんにちはカトーです。

弊社ではWEBアプリーション開発環境はESXiの開発環境やクラウドでサーバ作って開発を行うことが多いのですが、ちょっとした検証だとやはりローカル環境で行いたいものです。そして簡単なスクリプトはプロジェクト作らずにブラウザ上やらローカルのサーバ上で行いたいということもあります。

そんな中、先日メインマシンもノートパソコンもWindows10に乗り換えて定番のXAMPPを入れたらXDebugが入ってないので入れてみましたので、その記録です。

先に書いておくと、3ステップ完了です。

  1. 必要なバージョンのXdebugをダウンロードする。
  2. ダウンロードした dll を\xampp\php\extに置く。
  3. php.ini にxdebug 情報を書いて再起動。

 

あまりにも簡単なので、検証しながら書いていきますよ。読むのが面倒、サクッと入れる方は下にxdebugインストール項目あるので、そこからどうぞ。

 

PHPのデバックって

PHP言語は簡単に書けるがゆえに、お客様のスクリプトをサーバに格納して目につくのは負荷を増やすNotice:エラーや不要なループ、PHP7での非推奨記述など。いずれもWEBプログラマーさんがデバックすればいいのですが、結構な頻度でサーバを移したら動かないから修正するというのがあります。その上で、最低限実行時間とメモリ使用や、どの部分がエラーなのか分からないと困ります。

今回はそんな状況でXAMPPでデバック。まぁ、何かプロファイラやIDE使っていれば不要ですが……。

XAMPPのインストール

https://www.apachefriends.org/jp/index.html

XAMPPはローカル環境でさくっとPHP+MySQL環境構築できるツールです。難しいことなく5分もあればインストール完了です。

 

 

 

phpinfo();の確認

一応確認でphpinfo();関数で見てみると最新のXAMPPにはPHPは7.1.9でXdebugが入っていません。
テストで、エラーが出るコード書いてみます。

 

何も定義していないと状態で、$testという変数と、if文中で$hogeを使おうすれば、

上記エラーが出ます。これだとメモリーも実行時間もわかりません。何かプロファイラを使えばいいのですが、

しかしこれは最近のPHPのバージョンで、またサーバによってはこのエラーを消していたりします。XAMPPに内容しているphp.iniでは106行目付近

XAMPPではデフォルトでエラーを表示されるようになっています。

XDebugインストール

 

  1. 必要なバージョンのXdebugをダウンロードする。
  2. ダウンロードした dll を\xampp\php\extに置く。
  3. php.ini にxdebug 情報を書く。XAMPP再起動

参照 https://gist.github.com/odan/1abe76d373a9cbb15bed

落としてくるバージョンですが、おすすめなのは、以下のサイトでphpinfoの情報を張り付けてくれればそのまま必要なバージョンを教えてくれます。すごく簡単です。

https://xdebug.org/wizard.php 


貼り付けると以下、表示されます。

ありがたいことに、
Download php_xdebug-2.5.4-7.1-vc14.dll と出てますので、これをダウンロードして記述通りに、\xampp\php\extに配置します。ちなみにD:\となってますが、私はDドライブに入れてるので、これはCなり自分の環境が表示されますので、合わせてください。そして、php.iniの最後に「zend_extension = D:\xampp\php\ext\php_xdebug-2.5.4-7.1-vc14.dll」と一行記述。

xdebug確認

しっかり表示されました。
phpinfoも確認してみます。

しっかり表示されました。

最後に

昨今のWordPressでサイトを作り、プラグインでいろいろ作りこむというのが結構多い現状、バージョンに合わないやらテンプレートの部分をいじったら動かない!というのも見かけます。サーバを管理する側としてはPHPのプロセスが交通渋滞のように処理しきれずにロードアベレージがどんどん上がっていくのは冷や汗ものです。テーマやテンプレートを確認してひとつひとつプラグインを見ていくというのは本当に手間のかかることです。ぜひデバックツールやプロファイラを使って開発をしましょう。

カトー

この記事を書いた人:カトー

元デザイナー、一応会社の代表。
人生もデバック出来たらと、毎晩酒プロファイラに頼る日々です。
八丁堀周辺で良く見かけるおっさんです。

この記事に関してのお問い合わせ
御連絡・ご返信は原則2営業日以内を予定しております。
お急ぎの場合は、お手数ですが下記電話でもご対応をしております。

システムガーディアン株式会社
受付時間:平日9:00~18:00
受付担当:坪郷(つぼごう)・加藤
電話:03-6758-9166