この記事は今までCakePHP1.3を使っていた人が、これからCakePHP2を使うための簡単なまとめです。「なんか変わってるし不安やん・・・」という見えない心の壁をぶち壊しましょー!
フォルダ名とファイル名の命名規則が変わった
まず、CakePHP2をインストールすれば気付きますが、いきなりファイル・フォルダの命名規則が変わってますね〜。私はこれを見てCake2のヤル気が30%下がりました。笑
でも心配いりません(*´∀`)逆に楽になったなぁと私は思います。
アンダースコア記法がアッパキャメルケース記法に変わっただけです。
そしてコントローラについては、ファイル名とクラス名が同じになりました!(分かりやすいね
論より証拠、実際の例がこちらです
- CakePHP1.3系
- ファイル名:hoges_controller.php
- クラス名 :HogesController
- CakePHP2.X系
- ファイル名:HogesController.php
- クラス名 :HogesController
どえええええ、めっちゃ簡単なっとる!!!
あ、ちなみに1.3系の書き方も対応してるようです(*´∀`)
$this->data の場所が変わった
Cakeを扱うプロジェクトで$this->dataを使わないケースはないでしょう。その$this->dataが変わるなんて・・・しかし大変な事はなかった。
- CakePHP1.3系
- $this->data
- CakePHP2.X系
- $this->request->data
と、少し冗長かと感じましたが・・・
すべてはCakeRequestにまとまった!
CakePHP1.3系:CakePHP2.0系
$this->data:$this->request->data
$this->params['url']['url']:$this->request->url
$this->params['contoller']:$this->request->controller
$this->params['action'] or $this->action:$this->request->action
$this->params['pass'] or $this->passedArgs:$this->request->pass
$this->params['named'] or $this->passedArgs:$this->request->named
上記の通り、上手くまとまっています!冗長どころか美しい!!嬉しい変更です(*^^)v
また、RequestHandlerComponentにあった「isPost()・isGet()」などは「$this->request->is($type)・・・$typeには'post'や'get'」とCakeRequestにまとめられました。
以上です!
たったこれくらいの変更でも頭に入っているだけで2.Xでの開発は大丈夫かなと楽観してます。基本的な書き方は変わっていないので・・・それでもConfig/email.phpでEmailComponentの設定ができそうだなぁ〜とかまだ検証していない部分だらけですので、これから触れていきたいと思います。
それでは〜(*´Д`)