Model

モデルってなんぞ

参照:モデル : CodeIgniter ユーザガイド 日本語版

  • データベースに格納された情報を用いて機能するようデザインされたPHPのクラス
  • モデルクラスは application/models/フォルダに格納される。サブフォルダを構成したければサブフォルダ内に入れ子にして格納できる

モデルクラスの原型

class Model_name extends CI_Model {
	function __construct(){
		parrent:: __construct();
	}
}

Model_nameはクラス名。モデル名は"必ず"大文字で始め、他の文字は小文字にする必要がある。
基底クラスのモデルを確実に継承すること。

  • ファイル名はクラス名を小文字にしたものになる
class User_model extends CI_Model {
	function __cunstruct(){
		parent:: __cunstruct();
	}
}

この場合ファイル位置は application/models/user_model.php

モデルの読み込み

$this->load->model('Model_name');

サブフォルダに格納している場合はモデル格納用フォルダからの相対パスをしていする
application/models/blog/queries.phpの場合

$this->load->model('blog/queries');

一旦読み込まれると、モデルのメソッドはクラスメイト同じ名前のオブジェクトを使ってアクセスできる:

$this->load->model('Model_name');
$this->Model_name->function();

モデルを違う名前に割り当てたいときは、読み込みメソッドを第二引数に渡すことで指定できる

$this->load->model('Model_name', 'fubar');
$this->fubar->function();

MVC Model-View-Controller