デバッグ

eclipse や NetBeans で Laravel をデバッグできるようになると開発が楽になります。

ここでは、基本的なデバッグの設定から Laravel のデバッグ方法までを解説したいと思います。

環境

今回使用した環境は次のとおりです。

OS: Windows 7 Professional
Apach、PHP: XAMPP 1.7.7 (Apach 2.2.21、PHP 5.3.8)
eclipse: 4.2 (Juno)
NetBeans: 7.3

xampp のインストールディレクトリ: C:\xampp

準備

eclipse、NetBeans のどちらでもデバッグをするには、PHP の設定を変更する必要があります。

php.ini の内容を次ぎように書き換えます。筆者の環境では xampp を C:\xampp にインストールしていますので、php.ini は C:\xampp\php\php.ini となります。

[XDebug]
zend_extension = "C:\xampp\php\ext\php_xdebug.dll"
xdebug.remote_enable = 1
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "localhost"
xdebug.remote_port = 9000

※ zend_extension の値はお使いの環境に合わせてパスを変えて下さい。
※ 筆者が使用している XAMPP では php_xdebug.dll が最初からインストールされていましたが、 お使いの環境によっては、インストールされていない場合がありますので、その場合はあらかじめ 入手してインストールしておいてください。

php.ini を変更して保存したら、Apache を再起動します。

eclipse でのデバッグ

準備

[ウィンドウ] – [設定] を選択して、[設定] ダイアログを表示します。

[設定] ダイアログを表示したら、[PHP] – [PHP 実行可能ファイル] を選択します。

[PHP 実行可能ファイル] で、[追加] ボタンをクリックして [新規 PHP 実行可能ファイルの追加] ダイアログを表示します。

[新規 PHP 実行可能ファイルの追加] ダイアログが表示されたら次の内容を入力して [OK] ボタンをクリックして設定を保存します。

  • 名前: PHP デバッグ ※任意の名前
  • 実行可能ファイルパス: C:\xampp\php\php.exe
  • PHP.ini ファイル: C:\xampp\php\php.ini
  • SAPI タイプ: CLI
  • PHP デバッガー: xDebug

続いて、[PHP] – [PHP サーバー] を選択します。

[PHP サーバー] 画面を表示したら、[新規] もしくは既存のサーバー設定 [編集] します。

  • 名前: Default PHP Web Server ※任意の名前
  • ベース URL: http://localhost
  • Local Web Root: C:\xampp\htdocs

以上でデバッグの準備ができました。確認のために、サンプルの PHP プロジェクトを作成してデバッグをしてみましょう。

適当な PHP プロジェクトを作成したら [実行] – [デバッグの構成] を選択。

[デバッグの構成] ダイアログを表示したら、デバッグ対象の PHP Web アプリケーションを選択して、次の設定がされていることを確認したら [デバッグ] を実行します。

  • [サーバー] タブ – PHP サーバー: Default PHP Web Server ※[PHP サーバー] 画面で追加したサーバーの名前
  • [サーバー] タブ – ファイル: ※実行対象のファイルパス
  • [サーバー] タブ – URL: ※実行する URL が正しくなるように入力する
  • [デバッガー] タブ – サーバー・デバッガー: xDebug
  • [デバッガー] タブ – ブレークポイント: 最初の行でブレークにチェックを入れる

デバッグを実行して ファイルで指定したファイルの最初でブレークをしたら成功です。

Laravel のデバッグ