スライドショー

PHPのデバッグはxdebugで簡単!実行方法解説

PHPでプログラムを書いたの動かない・・・

どんな原因が考えられるでしょうか。

プログラム自体にバグがある
何か設定に不備がある

折角書き上げたプログラムが動かない時とても焦ると思いますが、原因は必ずあります。

その原因を特定するための方法を今回は以下の内容でお伝えしようと思います。

【基本】デバッグとは
【基本】xdebugの設定をする
【実践】xdebugを使ってみよう

デバッグについて

まず、バグを取り除くための方法としてのデバッグを解説します。

デバッグとは

デバッグは、プログラムの欠陥を取り除くことを指します。

バグとは=欠陥の事です。

バグの発見は目視や、テストを行い発見する事が多いです。

デバッグが必要な理由

デバッグを行わないといけない理由としてはもちろん冒頭にあげたプログラムが動かない致命的な問題が発生します。

他には、一応動くが文法的に修正した方がよい箇所を修正できます。

開発が進めば進むほど、他の場所にも影響が及びますので修正が困難になります。

開発した機能の規模が小さいうちにデバッグを行う事が重要です。

デバッグの方法

デバッグについては理解して頂けたかと思いますが、どのようにバグを見つければよいでしょうか。

プログラムのバグはエラーが発生しています。

世の中には、そのエラーを発見しやすくするデバッグツールが存在します。

次章ではそのツールについて解説します。

xdebugの設定

前章でデバッグツールがある事をお話しました。

ツールの種類はたくさんあるのですが、その中でも有名なxdebugの使い方を説明していきます。

インストール

インストールの流れは

xdebugのダウンロード
php.iniを編集する
apacheを再起動

となります。

今回はPHPを動かすための環境はxamppとします。

xamppは、windowsでも動くPHPを動かすための環境です。

1.ファイルのダウンロードと配置

必要なファイルを調べるため、以下サイトにアクセスします。
https://xdebug.org/wizard.php

赤枠内にphpinfo.phpページの情報をブラウザからコピーして貼りつけ、青枠のボタンを押します。

紫枠内のリンクを押すと対応したバージョンのxdebugがダウンロードできます。

php_xdebug-2.6.1-7.2-vc15.dllというファイルをダウンロードして、以下に置きました。

C:\xampp\php

2. php.iniを修正する

pnp.iniの一番下の行に以下を追記します。

zend_extension = C:\xampp\php\ext\php_xdebug-2.6.1-7.2-vc15.dll

php.iniはC:\xampp\php配下にありました。

追記後、保存して閉じます。

3. xamppを再起動

xamppを再起動させます。

起動させている場合は図の赤枠のような表示になっています。


一度押してApacheを停止後、もう一度同じボタンを押してApacheを起動させます。

4. 確認

phpinfo.phpを表示させると以下の表示がみつかりました。

これでxdebugが使用できるようになりました。

次章では実際に使用してみます。

xdebugを使う

それではxdebugを使用してみます。

まず、簡単なテストコードを用意してxdebug使わない場合のエラー表示を確認します。

test.php

<?php
echo $samurai;

画面に$samuraiという変数の中身を表示させます。

結果
Notice: Undefined variable: samurai in C:\xampp\htdocs\test.php on line 2

何の装飾もなく、エラー箇所が表示されます。

続いて同じtest.phpをxdebugを設定した環境で実行してみます。

以下のように表示されました。



装飾されて通常時のエラー内容よりも情報が多くなっています。

今回は少ないエラー内容でしたが、もっと多くのエラーを検出した場合にはとても見やすいと思います。

設定も簡単ですので是非設定してみてください。

まとめ

今日はPHPでxdebugを使う方法について解説してみました。

xdebugはeclipseやnetbeansなどの統合開発環境と連携させて使用することも出来ます。

使い方に慣れたら是非挑戦してみてください。

それでは、また。

LINEで送る
Pocket

無料でSEからWebエンジニアへ転職しませんか?



侍エンジニア塾では、完全未経験の方から現在SEだけどプログラミングはやっていないという経験者まで、幅広い方々の人生を好転させるプログラミング指導を行ってきました。SEの方とお話していくなかで、

  • システムエンジニアという職業だけどコードが書けない
  • 事務作業が多くスキルがないため将来が不安
  • スクールに通うと完全未経験者と同じスタートになるからレベルが合わない
という、すでに知識があるSEならではのお悩みがあることに気づきました。そんな方におすすめなのが、弊社の「転職コース 」です。

弊社では、マンツーマンでレッスンを行いますので、現在お持ちの知識レベルからカリキュラムを作成いたします。さらにこちらの転職コースは無料で受講を始められて転職成功でそのまま卒業できるというとてもお得なコースとなっています。

既に知識のあるSEといっても転職は年齢が若いほど受かりやすいため、まずは無料体験レッスンで今の現状や理想の働き方について一緒に考えていきましょう。

まずは無料体験レッスンを予約する

書いた人

つぶらや

つぶらや

独学PG&SE、東京在住30代女性。
誰でもプログラマーになれるがモットーで、わかりやすい記事を目指しています。

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説