Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
今こそCakePHP3に乗り換えよう!/php_conference_fukuoka_2016
Search
sakuragawa
May 24, 2016
Programming
0
980
今こそCakePHP3に乗り換えよう!/php_conference_fukuoka_2016
今こそCakePHP3に乗り換えよう!
sakuragawa
May 24, 2016
Tweet
Share
More Decks by sakuragawa
See All by sakuragawa
CircleCI APIでプチ効率化
sakuragawa
1
410
PHP + GitHub + Azure Functions = ?
sakuragawa
0
200
CakePHP2と3の違い
sakuragawa
8
4.4k
Other Decks in Programming
See All in Programming
デザインシステムで Tailwind CSSとCSS in JSに分散投資をしたら良かった話
fsubal
14
3.5k
両面どころかインフラもTSでできるよ ~ 全方位TypeScriptによるプロダクト開発 ~
myfinder
9
2.5k
Parallel Socket Communication in Swift
s_shimotori
0
260
オブジェクト指向コードレビューの新しいアプローチ
akkie76
3
1.6k
TCAの Shared Stateって どういう仕組みになってんの?
yimajo
0
330
htmx is fun!
codehex
2
190
Crafting a Own PHP - ウキウキ手作りミニマリストPHP
uzulla
4
1.1k
CircleCIを活用して AWSへの継続的デリバリーを 実践する
coconala_engineer
1
110
LLMチャットボットのアプリケーション設計Tips
os1ma
4
670
GitHub Copilot Tips and Tricks
yuichielectric
26
7.5k
Swiftの型推論を学ぼう | Let's Learn About Type Inference in Swift
omochi
2
820
もうすぐ新年度、Babylon.jsがお勧めな3個の理由
hideg
0
170
Featured
See All Featured
Practical Orchestrator
shlominoach
180
9.7k
Designing with Data
zakiwarfel
94
4.8k
How GitHub (no longer) Works
holman
301
140k
BBQ
matthewcrist
78
8.7k
Building Flexible Design Systems
yeseniaperezcruz
317
37k
Web development in the modern age
philhawksworth
201
10k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
657
120k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
319
20k
Designing Experiences People Love
moore
135
23k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
352
28k
The MySQL Ecosystem @ GitHub 2015
samlambert
242
12k
GitHub's CSS Performance
jonrohan
1023
450k
Transcript
今こそCakePHP3に乗り換えよう! 2016/5/21
自己紹介 株式会社Fusic 技術開発部 マネージャー 櫻川 幸三 https://github.com/kozo https://github.com/fusic http://qiita.com/kozo http://qiita.com/organizations/fusic
CakePHP利用歴:8年程度(CakePHP1.1から) 2
3 使ってますか?
4 CakePHP3に 移行するメリットあるの?
6 5つのおすすめポイント!
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 配列地獄からは解消される!
2. QueryBuilder 8 複雑なSQLもかけるようになった 例) hasMany先のテーブルに条件をかける matching
2. QueryBuilder 9 複雑なSQLもかけるようになった 例) hasMany先のテーブルに条件をかける
3. Table、Entity Table DBのテーブルへアクセスする処理を主に書く CakePHP2のModelクラスに近い動きをする 10 • Entity • DBのテーブル1レコードを表す
• カラムのデータ自体の加工等を担当する • CakePHP2までのModelクラスが、 TableとEntityの2つに分離された Tableクラス Entityクラス
4. HTMLの修正が非常に楽! 11
5. namespace やっとnamespaceに対応した! 12
28 プラグイン
fusic/Apollon 29 Installation composer require fusic/Apollon ひらがな、カタカナ、電話番号といったような基本的なバリデー ションルールをまとめているValidationクラス
fusic/encount 30 本番環境等でwarningやnotice、faital等のエラーが出た場合 にメール等で通知してくれるプラグイン Senderクラスを自作することで通知方法をSlack等、メール以 外に変更することが可能 Installation composer require fusic/encount
kozo/Partial 31 同一コントローラー内で使える小さいスコープのテンプレート Installation composer require kozo/Partial 新規登録画面 編集画面 add.ctp
edit.ctp _form.ctp 共通する部分を 別ファイルにしておき Partialで読み込む
まとめ CakePHP3は 非常にパワフルで拡張性の高い フレームワークになりました。 他にも色々便利な機能があります。 興味ある人は是非、使っていきましょう! 36
ご清聴ありがとうございました Fusicはテクノロジーが 好きなエンジニアを募集しています https://fusic.github.io 37
ご清聴ありがとうございました Fusicはテクノロジーが 好きなエンジニアを募集しています https://fusic.github.io 49