【メモ】FuelPhpのtasksをPHPSTORMでデバッグする

-shared-img-thumb-pp_notekey_TP_V

どうもゴエです。
仕事上PHPに触れる事が多いのですが、あまりPHPのフレームワークというものを利用したことが無かったので、最近、勉強がてら「Fuel PHP」というフレームワークを弄っていました。

普段だとSSH上から「php 【実行するパス】」で叩いてたんだけど、それだとFuelPHPでは動かないみたい?
なのでFuelPHPを弄っている中でバッチ処理である「tasks」をデバッグモードで動かして、実際の動きを確認したかったんだけど、そのやり方が分からなく普段のやり方でやったらドツボにハマったのでメモメモ

今回は以下の環境でやってみました。
PHP STORM ver 8.0.3
Fuel PHP ver1.7
Xampp 1.8.1
デバッグはXdebug
※ここではXdebugの設定やPHPSTORMなどの設定は省きます。

デバッグ設定する前に

FuelPHPは「tasks」の中に「robots.php」そいつを叩くと、ロボットのAAが表示されるというサンプルプログラムがあるので、今回はコレをベースにやってみる。

基本的にFuelPHPではtaskを実行する時は以下のようにoilコマンドを使って実行するらしい。

php oil refine robots

このoilは見てみるとルートフォルダ「ここではfuelphpにしています。」の直下にある「oil」というファイルを利用しているみたい。
なのでこのoliファイルを開くと何やらphpソースが書いてあるけど、PHPSTORMでは「oil」を「phpファイル」として認識していないのでテキストとして表示される。
このままだと気持ち悪いので、PHPSTORMの設定を弄って「oil」を「PHPファイル」として認識させる。

設定方法

まずPHPSTORMのメニューから「File」を選択し「setting」を開く。

そして「Editor」→「File Types」を選択し、「Recognized File Types」内にある「PHP files」を選択します。

「PHP files」を選択すると「Registered Patterns」にある「+」ボタンを押して「oil」を登録すればphpファイルとして読み込まれます。

tasksをデバッグする

今回のデバッグ設定は下記サイトを参考にしました。

PHPStormでFuelPHPのtasksの処理をデバッグしたいのですが、どうやれば良いでしょうか。

oilファイルをPHPファイルとして認識させたので、次はtasksをデバッグする。
はじめにoilファイルの最初の処理にブレークポイントを貼っておくw

次に、メニューから「Run」→「Edit Configurations…」を開く。

編集画面で「PHP Script」を選択後、「Configurations」内にある「File」には先ほど設定した「oil」ファイルのパスを記述する。

C:\xampp\htdocs\fuelphp\oil

次に「Arguments」項目に実行したいtasksのコマンドを記述する。
今回はサンプルの「robots.php」を実行するので以下のような記述をする。

refine robots

んで終わり。

後は実際にデバッグを実行し、最初にoilに貼ったブレークポイントが起動すれば成功。

まとめ

最初自分は今までと同じようにFileにrobots.phpのパスを書いてやってみたら違っていたのね・・・w
まだ、FuelPHPは触れて間もないからもっと違うやり方があるかも知れないし、もしかしたらoilを使わなくてもバッチ処理出来るかもしれないけど、
とりあえずはこのままやっていこうw

[amazonjs asin=”4899774222″ locale=”JP” tmpl=”Small” title=”はじめてのフレームワークとしてのFuelPHP 改訂版”]
[amazonjs asin=”4800710642″ locale=”JP” tmpl=”Small” title=”改訂 FuelPHP入門”]

書いた人
ゴエ

書いてくれた人:みお。さん(@61167)
時々お江戸(東京)に出没する熱血系作品が好きな人。
なんか47都道府県に居るらしい(友人談)。
PHPをちょくちょく弄る人。

ゴエをフォローする
開発
スポンサーリンク
ゴエをフォローする
スポンサーリンク
ゴエぶろ

コメント

Ads Blocker Image Powered by Code Help Pro

当サイトでの広告の表示を許可してください

ブラウザの広告ブロッカーの機能を無効にするか、当サイトのドメインをホワイトリストに追加し、「更新」をクリックして下さい。

このサイトでは広告を主な資金源としています。ご協力の程よろしくお願い致します。

タイトルとURLをコピーしました