Upload
hiroaki-murayama
View
1.003
Download
1
Embed Size (px)
Citation preview
Hakodate framework 勉強会�シンプルなPHPのフレームワーク�
* Introduction * Sample coding * Future
Agenda�
* シンプル * 軽量 * はこだて生まれ * オープンソース
Simple framework for PHP�
* アクションコントローラ�* MySQL ラッパ―
Simple framework for PHP�
* http://code.google.com/p/hakodate/downloads/list
Download �
* ドキュメントルートにZIPの中身をコピー * http://127.0.0.1/hakodate/
Sample coding�
* ./config/config.php の編集
Sample coding�
* サンプルDBを作ってみる * 表示されたSQL文を実行 * Testにクエリを実行�
Sample coding�
* クエリが書かれたページをリロード �
Sample coding�
* Model – module/xxxx.php * Controller – index.php * View – inc_xxxx.php
MCV Model�
* GETによるアクション指定 * ?action=sample → sampleAction() が実行される
* アクション名と同等のViewを作成 * Inc_sample.php�
Controller �
* Inc_xxxx.php 描画処理を行う * Actionと対になっている
View�
* ディレクトリ単位でMCVが成り立っている * モジュールを読み込むときのディレクトリに注意
Directory�
* out関数 * 配列をテーブル表示してくれる関数
* get関数 * クエリを引数として渡すことで、レコードの配列を取得する * getAll関数 * get関数の複数レコードを取得できる関数 * put関数 * 新しいレコードを追加する関数�
便利な関数群�
* 煩わしいコードを書かなくてもいい * 左のコードがたった一行に * get((‘SELECT * FROM friends WHERE firstname=’.dq($firstname));
�
MySQL Wrapper�
* グローバル変数に、特定のDBとのコネクションを張ったクラスオブジェクトを確保 * このオブジェクトをシングルトンパタンとして、get関数やput関数を呼び出している * しかも、配列にして返してくれる!
�
MySQL Wrapper�
* getの安全化 * ‘user_id =’.$user_id → ‘user_id = %d’
* 実行速度を測れるようにしたい * DBの切り替え
Future �