FuelPHPによるMVCプログラミング入門

サブディレクトリ、パラメータとURL

全334コースを10日間無料で

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
FuelPHPでは、コントローラーやアクション、パラメータとディレクトリによって URLが次々に変化します。ここでは、それぞれの役割を詳しく紹介します。
講師:
08:23

字幕

ここではサブディレクトリパラメーターとURL としましてFuelPHP のコントローラーが作り出すURL について詳しく解説していきたいと思います。FuelPHP はコントローラーやそこに定義するアクションによってURL が複雑に変化します。更にそこにパラメーターやサブディレクトリなども含めていくとどんどんと URL が複雑になっていきます。では実際に確認してみましょう。今回は lesson04-02 というフォルダにFuelPHP をセットアップしました。MAMP の環境設定としてもlesson04-02 というというところにセットされています。そして localhost:8888 でこの Welcome のページがされる状態で新しくコントローラーを作成していきます。新しいファイルを作成して内容を全て空にしたらここでは Class としてController_sampleというクラスを定義します。コントローラーとしてファンクションでここでは action_index というクラスを作りましょう。ではここではindex を呼び出したことが分かるようにprint ('index') としてこのコントローラーを保存してみます。 lesson04-02 fuel のup の classes の controller にここで付けた名前であるsample.phpという名前で保存します。ではこのサンプルを呼び出してみます。/sample としてこの様に呼び出せばindex になります。ではここにアクションを追加してみましょう。function action の例えば saveこれを save として呼び出しましたと定義します。すると、ここでは URL に/sample/save と指定する事でこのように save というこのアクションを呼び出すことができます。そしてこのコントローラーですけれども今は controller フォルダーに保存をしています。この controller フォルダの中ではさらに細かくフォルダを分けることができます。例えば、この controller の中に新しく dir というようなディレクトリを作ったとしましょう。そしてこの中にsample.php を納めていきます。すると、この controller の中のdir の中の sample.phpというクラスになりますがこの場合、コントローラーの名前としても今付けた dir というディレクトリの名前が必要になります。 そしてサンプルの S は大文字にしましょう。こうするとコントローラーのdir のサンプルという形になりURL はこのように/dir/sample/ となります。するとインデックスが呼ばれている事が分かります。更にここの save というアクションを呼び出すにはこの様に dir sample の save という形になります。この様にコントローラーをディレクトリに分けるとコントローラーの名前にもそのディレクトリの名前が反映されURL にもそのディレクトリが反映されます。例えばこれを使うとどの様な時に便利かと言いますと例えば shop 関係のクラスをまとめたこの様なディレクトリがありこの中に例えばちょっとここでは空白のファイルにしますけれども例えば、商品を管理するcontroller_shop_item というクラスや例えばそのショップを訪れる顧客の情報を管理するためのshop の中のcustomer クラスcustomer controller であったりなどこのように shop 関連のコントローラー群を集めるというような形で分類をすることができます。そしてそれぞれのURL を呼び出す時にはshop/item/ だったりshop/customer/ であったりというような形でこのようにURL としてもわかりやすく呼び出すことができます。 さらにコントローラーの中にはパラメーターを指定することができます。例えばここでは今作ったこのitem というこちらのコントローラーを使っていきましょう。class として Controllerここでは Shop の中のIitem というクラスになります。extends はController です。そして、public function はaction_indexこちらはただ index と表示するだけにしましょう。そして、例えばpublic function の例えばここではtax として price を指定するとprint としてprice に 1.05 ということで消費税が 5% であると仮定しその消費税込の値段を表示するというアクションを提示する事にしましょう。action_tax となります。これで shop item というコントローラーができaction tax というアクションができてそこにパラメーターとしてprice が渡されています。ではこちらを呼び出してみましょう。/shop/item/taxそして 例えば /100 などと指定すると105 という事で消費税込の価格が表示されています。 この様にパラメーターまで加えるとディレクトリ名コントローラー名そしてアクション名更にはパラメーターというような形でURL が続いていきます。この時パラメーターとして$price を受け取るようにして作ったアクションにはパラメーターを必ず指定しなければならなくなります。もしパラメーターがない状態でこの様に呼び出してしまうとWarning! としてmissing argumentつまり、パラメーターの数が合わないという風に表示されてしまいます。では、パラメーターを指定しても指定しなくても良いという形にするにはどうしたらよいでしょうか。その場合はここのパラメーターの指定の中に$price= 何とかというような初期値を与えてあげます。こうすることでもしパラメーターを指定した場合はその省略されたパラメーターが指定され0 × 1.05 ということでここでは 0 と画面に表示されます。もちろんパラメーターを指定すればこのようにパラメーターを使って計算をした結果を表示する事もできるというわけです。この様に FuelPHP はディレクトリやコントローラーアクション、そしてパラメーターというような組み合わせでURL が次々に出来上がっていきます。 もしこの URL をそのまま使いたくないということであればroutes というファイルを使って設定を変更する事もできますので合わせて利用していくと良いでしょう。

FuelPHPによるMVCプログラミング入門

このコースでは、PHPのフレームワークのひとつであるFuelPHPを紹介していきます。フレームワークとはスクリプト開発における「足場」となるもので、近年のスクリプト開発においては非常に一般的な存在となっています。高速な開発スタイルをぜひとも身に付けていきましょう。

6時間19分 (47 ビデオ)
現在、カスタマーレビューはありません…
 
ソフトウェア・トピック
価格: 3,990
発売日:2014年01月12日

このコースは、「オンデマンド」でご利用可能であり、ダウンロードすることもオンラインで見ることもできます。

ダウンロードすると、オフラインでコースを使用し、豊富なインターフェースをフルに活用できます。複数のデバイスを使用したり、 一度に全コースをダウンロードしたくない場合は、アカントにログインして、ストリーミング・ビデオとしてコースのレッスンを視聴してください。

ビデオトレーニングをお楽しみいただけますように! お問い合わせは、cs-jp@lynda.com宛までご連絡ください。