# Model 定义 什么是Model , 当我们有大量的SQL需要重复执行, 不适合在控制器中大量的写入. 我们就需要将他们封装成函数. 比如我们有一段 添加用户账号密码进入用户表的代码 . 这代码可能会在多个控制器中使用. 此时我们就可以将这段代码封装到Model中. Model的定义与控制器Action 是一样的操作 Model 默认存放目录在 **/Model**. 我们实例一个 写入内容 Model定义方式与Action一致 首字母大写. 新建文件 **/Model/User.php** ~~~ <?php namespace Model; use HY\Model; !defined('HY_PATH') && exit('HY_PATH not defined.'); class User extends Model{ public function test(){ echo '这是UserModel的test函数'; } } ~~~ 上面就是一个简单的Model 类 与 方法函数 我们尝试在控制器中使用它 ~~~ <?php namespace Action; use HY\Action; class Index extends Action { public function Index(){ //实例UserModel $User = M("User"); //调用UserModel 中的 test() ; $User->test(); //对User表插入数据 $User->insert(array( "user" => "admin", "pass" => "admin", )); } } ~~~ +++ get:/ <<< success 这是UserModel的test函数 +++ ## 更多Model 实例演示 **/Model/User.php** 内容 ~~~ <?php namespace Model; use HY\Model; !defined('HY_PATH') && exit('HY_PATH not defined.'); class User extends Model{ //一个添加用户的函数 public function add_info($user,$pass){ $this->insert(array( "user" => $user, "pass" => $pass, )); } //删除某用户函数 public function del_user($user){ $this->delete(array( 'user'=>$user )) } } ~~~ 控制器中使用 ~~~ <?php namespace Action; use HY\Action; class Index extends Action { public function Index(){ //实例UserModel $User = M("User"); //调用UserModel 中的 add_info() ; //添加一个用户 $User->add_info('admin','123456'); //删除 admin 用户 $User->del_user('admin'); } } ~~~