今こそCakePHP3に乗り換えよう!/php_conference_fukuoka_2016

 今こそCakePHP3に乗り換えよう!/php_conference_fukuoka_2016

今こそCakePHP3に乗り換えよう!

6ac3d104c1f959827ec9a12099b05e85?s=128

sakuragawa

May 24, 2016
Tweet

Transcript

  1. 今こそCakePHP3に乗り換えよう! 2016/5/21

  2. 自己紹介 株式会社Fusic 技術開発部 マネージャー 櫻川 幸三 https://github.com/kozo https://github.com/fusic http://qiita.com/kozo http://qiita.com/organizations/fusic

    CakePHP利用歴:8年程度(CakePHP1.1から) 2
  3. 3 使ってますか?

  4. 4 CakePHP3に 移行するメリットあるの?

  5. 6 5つのおすすめポイント!

  6. 1. QueryBuilder CakePHP2 7 $query = [ ‘conditions’ => [

    ‘条件A’, ‘条件B’ ], ‘order’ => [ ‘ソート条件A’, ‘ソート条件B’ ], ‘fields’ => [‘取得フィールド’] ] $this->User->find(‘all’, $query); $this->Users->find() ->where(条件A) ->where(条件B) ->order(ソート条件A) ->order(ソート条件B) ->select(取得フィールド) ->all(); • CakePHP3 配列地獄からは解消される!
  7. 2. QueryBuilder 8 複雑なSQLもかけるようになった 例) hasMany先のテーブルに条件をかける matching

  8. 2. QueryBuilder 9 複雑なSQLもかけるようになった 例) hasMany先のテーブルに条件をかける

  9. 3. Table、Entity Table DBのテーブルへアクセスする処理を主に書く CakePHP2のModelクラスに近い動きをする 10 • Entity • DBのテーブル1レコードを表す

    • カラムのデータ自体の加工等を担当する • CakePHP2までのModelクラスが、 TableとEntityの2つに分離された Tableクラス Entityクラス
  10. 4. HTMLの修正が非常に楽! 11

  11. 5. namespace やっとnamespaceに対応した! 12

  12. 28 プラグイン

  13. fusic/Apollon 29 Installation composer require fusic/Apollon ひらがな、カタカナ、電話番号といったような基本的なバリデー ションルールをまとめているValidationクラス

  14. fusic/encount 30 本番環境等でwarningやnotice、faital等のエラーが出た場合 にメール等で通知してくれるプラグイン Senderクラスを自作することで通知方法をSlack等、メール以 外に変更することが可能 Installation composer require fusic/encount

  15. kozo/Partial 31 同一コントローラー内で使える小さいスコープのテンプレート Installation composer require kozo/Partial 新規登録画面 編集画面 add.ctp

    edit.ctp _form.ctp 共通する部分を 別ファイルにしておき Partialで読み込む
  16. まとめ CakePHP3は 非常にパワフルで拡張性の高い フレームワークになりました。 他にも色々便利な機能があります。 興味ある人は是非、使っていきましょう! 36

  17. ご清聴ありがとうございました Fusicはテクノロジーが 好きなエンジニアを募集しています https://fusic.github.io 37

  18. ご清聴ありがとうございました Fusicはテクノロジーが 好きなエンジニアを募集しています https://fusic.github.io 49