PHPにおけるMVCモデルの実践
あなたのデータベースに、何らかのレコードを持つテーブル page があるとします。
二つのメソッドを持つモデル Page を作成してみましょう。最初のメソッドは
その id によって一つのレコードを取得し、二つ目のメソッドは
id の範囲からレコードの配列を取得します:
<?php
namespace Project\Models;
use \Core\Model;
class Page extends Model
{
public function getById($id)
{
return $this->findOne("SELECT * FROM page WHERE id=$id");
}
public function getByRange($from, $to)
{
return $this->findMany("SELECT * FROM page WHERE id>=$from AND id<=$to");
}
}
?>
では、コントローラーでこのモデルを使ってみましょう:
<?php
namespace Project\Controllers;
use \Core\Controller;
use \Project\Models\Page; // モデルを接続
class PageController extends Controller
{
public function test() {
$page = new Page; // モデルオブジェクトを作成
$data = $page->getById(3); // id=3のレコードを取得
var_dump($data);
$data = $page->getById(5); // id=5のレコードを取得
var_dump($data);
$data = $page->getByRange(2, 5); // idが2から5までのレコード
var_dump($data);
}
}
?>
あなたのデータベースにテーブル page を作成し、
データを入力してください。理論で説明したコードの動作を
確認してください。