BLOG

Blitz Gateスタッフブログ

BLOG

CakePHP3でComponentを使う方法+α

書いた人:

CakePHP3  

test2

どうも、ゆんゆんです。

 

長らく更新できなかったのですが、地味にいろいろありました。
その中でも実際に使用した、CakePHP3でのComponentの継承をご紹介します。

 

Componentファイルの作り方

 

Componentファイルは/src/Controller/Componentディレクトリに格納します(デフォルト設定の場合)
直接ファイルを作っても良いですが、ここはComposerがありますので、bakeしてみましょう。

/src/Controller/Component/VehicleComponentファイルができましたか?
この調子で「CarComponent」「BikeComponent」ファイルを作りましょう。

 

Componentファイルの編集(Vehicle)

VehicleComponentはCarComponentとBikeComponentの親となるComponentファイルにします。
ですので、下記のように編集してみましょう。

 

次に「CarComponent」ファイルを編集します。

これでタイヤの数が4になりましたね。
CarComponent同様に、BikeComponentを編集しましょう。
タイヤの数は 2 です。

 

ControllerからComponentを使用する

作成したComponentファイルをControllerから使用してみましょう。
ControllerもComponent同様、bakeしましょう。

GarageControllerが作成されましたか?
このGarageControllerからCarComponentとBikeComponentファイルを呼び出します。
 
下記のように、大幅に修正します。

これでそれぞれのタイヤの数が数えられます。
checkCarTireとcheckBikeTireのアクションにアクセスしてみましょう。
それぞれ4と2が出れば成功です。

 

さいごに

いかがでしたか?
継承に関してはなかなか難しいところもありますが、慣れるとコードの記述量が減り、スムーズな開発ができますね。

 

ではではー♪

  • このエントリーをはてなブックマークに追加