爆速フレームワーク!! phalcon php framework
DESCRIPTION
お久しぶりです。 このたび、RODEO の技術メンバーの一員として、 第一弾プロジェクトに携わることになりました。 どうぞよろしくお願い致します。 さて、今回ご紹介するのは、私たちが採用している **爆速** のフレームワークです! Phalcon PHP Framework 技術陣全員が口をそろえてこう言います。 「web フレームワークの集大成だ…!」 そんな Phalcon についてご紹介します。TRANSCRIPT
![Page 1: 爆速フレームワーク!! Phalcon PHP Framework](https://reader034.vdocuments.net/reader034/viewer/2022042507/55645261d8b42a94308b51f5/html5/thumbnails/1.jpg)
Meet ♡ Phalcon
大平かづみ
![Page 2: 爆速フレームワーク!! Phalcon PHP Framework](https://reader034.vdocuments.net/reader034/viewer/2022042507/55645261d8b42a94308b51f5/html5/thumbnails/2.jpg)
Phalcon とは?
PHP の爆速 フレームワーク Σ(・ω・ノ)ノ!
今までの MVC フレームワークの 集大成 のような出来!
初心者でもわかりやすいシンプルなフレームワーク
Rails を経験していれば、さらにとっつきやすい
Windows, Linux/Unix/Mac 対応
親しみやすいテンプレートエンジン Volt
NoSQL と相性が良い
便利な scaffold のGUIツール あり
![Page 3: 爆速フレームワーク!! Phalcon PHP Framework](https://reader034.vdocuments.net/reader034/viewer/2022042507/55645261d8b42a94308b51f5/html5/thumbnails/3.jpg)
爆速 PHP フレームワーク
内側が C言語 で実装されている
PHPのエクステンションとして実装されている
![Page 4: 爆速フレームワーク!! Phalcon PHP Framework](https://reader034.vdocuments.net/reader034/viewer/2022042507/55645261d8b42a94308b51f5/html5/thumbnails/4.jpg)
爆速 PHP フレームワーク
内側が C言語 で実装されている
PHPのエクステンションとして実装されている
![Page 5: 爆速フレームワーク!! Phalcon PHP Framework](https://reader034.vdocuments.net/reader034/viewer/2022042507/55645261d8b42a94308b51f5/html5/thumbnails/5.jpg)
シンプルで柔軟な、集大成フレームワーク
単一/複数のMVCモジュールを扱える → Full MVC applications
シンプルなREST API も実装しやすい → Micro Applications
DIコンテナ を利用できる
Rails の経験を活かせる、さらに便利
Rails では gem で提供されていたページネイションなど、標準装備 → ex. Pagination
Twitter Bootstrap を利用
シンプルな Model
NoSQL と相性が良い → ODM (Object-Document Mapper)
使いやすいテンプレートエンジン Volt
便利な scaffold の GUIツール あり → Developer Tools
![Page 6: 爆速フレームワーク!! Phalcon PHP Framework](https://reader034.vdocuments.net/reader034/viewer/2022042507/55645261d8b42a94308b51f5/html5/thumbnails/6.jpg)
シンプルで柔軟な、集大成フレームワーク
単一/複数のMVCモジュールを扱える → Full MVC applications
シンプルなREST API も実装しやすい → Micro Applications
DIコンテナ を利用できる
Rails の経験を活かせる、さらに便利
Rails では gem で提供されていたページネイションなど、標準装備 → ex. Pagination
Twitter Bootstrap を利用
シンプルな Model
NoSQL と相性が良い → ODM (Object-Document Mapper)
使いやすいテンプレートエンジン Volt
便利な scaffold の GUIツール あり → Developer Tools
![Page 7: 爆速フレームワーク!! Phalcon PHP Framework](https://reader034.vdocuments.net/reader034/viewer/2022042507/55645261d8b42a94308b51f5/html5/thumbnails/7.jpg)
テンプレートエンジン Volt
シンタックス
{% ... %} : PHPのステートメントとして置き換えられる
{{ ... }} : <? echo … ; ?> として置き換えられる
これは、既存のフレームワークでも よく採用されている シンタックス
インスパイアを受けた Python の テンプレートエンジン Jinja
Symphony のテンプレートエンジンも同じようなシンタックス
気配り が効いていて、使って気持ちがいい
![Page 8: 爆速フレームワーク!! Phalcon PHP Framework](https://reader034.vdocuments.net/reader034/viewer/2022042507/55645261d8b42a94308b51f5/html5/thumbnails/8.jpg)
テンプレートエンジン Volt
シンタックス
{% ... %} : PHPのステートメントとして置き換えられる
{{ ... }} : <? echo … ; ?> として置き換えられる
これは、既存のフレームワークでも よく採用されている シンタックス
インスパイアを受けた Python の テンプレートエンジン Jinja
Symphony のテンプレートエンジンも同じようなシンタックス
気配り が効いていて、使って気持ちがいい
![Page 9: 爆速フレームワーク!! Phalcon PHP Framework](https://reader034.vdocuments.net/reader034/viewer/2022042507/55645261d8b42a94308b51f5/html5/thumbnails/9.jpg)
ODM for MongoDB
ODM = Object-Document Mapper
ドキュメントをオブジェクトに変換するマッパー
Collection クラスをオーバーライドすることで、Model クラスと同様に NoSQL のデータを扱える
CRUD (Create, Read, Update, Delete)
find(), save(), delete()
find() で利用できるパラメータ
conditions, fields, sort, limit, skip
validate() で利用できるパラメータ
Email, ExclusionIn, InclusionIn, Numericality,Regex, StringLength
![Page 10: 爆速フレームワーク!! Phalcon PHP Framework](https://reader034.vdocuments.net/reader034/viewer/2022042507/55645261d8b42a94308b51f5/html5/thumbnails/10.jpg)
ODM for MongoDB
ODM = Object-Document Mapper
ドキュメントをオブジェクトに変換するマッパー
Collection クラスをオーバーライドすることで、Model クラスと同様に NoSQL のデータを扱える
CRUD (Create, Read, Update, Delete)
find(), save(), delete()
find() で利用できるパラメータ
conditions, fields, sort, limit, skip
validate() で利用できるパラメータ
Email, ExclusionIn, InclusionIn, Numericality,Regex, StringLength
![Page 11: 爆速フレームワーク!! Phalcon PHP Framework](https://reader034.vdocuments.net/reader034/viewer/2022042507/55645261d8b42a94308b51f5/html5/thumbnails/11.jpg)
Phalcon Development Tools
Controllers
Controller の名前を入力して生成
Models
指定した Model を生成(全テーブルも指定可能)
Scaffold
指定したテーブルからModel, View, Controller を生成
Migrations
テーブル単位でマイグレーション可能
![Page 12: 爆速フレームワーク!! Phalcon PHP Framework](https://reader034.vdocuments.net/reader034/viewer/2022042507/55645261d8b42a94308b51f5/html5/thumbnails/12.jpg)
Phalcon Development Tools
Controllers
Controller の名前を入力して生成
Models
指定した Model を生成(全テーブルも指定可能)
Scaffold
指定したテーブルからModel, View, Controller を生成
Migrations
テーブル単位でマイグレーション可能
![Page 13: 爆速フレームワーク!! Phalcon PHP Framework](https://reader034.vdocuments.net/reader034/viewer/2022042507/55645261d8b42a94308b51f5/html5/thumbnails/13.jpg)
さいごに
Phalcon PHP Framework は、new BSD license に基づきリリースされています。
尚、本資料における Phalcon からの引用、および画像については、Creative Commons Attribution 3.0 License に基づき、使用しています。
![Page 15: 爆速フレームワーク!! Phalcon PHP Framework](https://reader034.vdocuments.net/reader034/viewer/2022042507/55645261d8b42a94308b51f5/html5/thumbnails/15.jpg)
See you, again! :)