欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

ThinkPHP学习笔记 实例化模型的四种方法

程序员文章站 2024-02-10 17:43:52
...
创建Action类

[php]

class NewObjectAction extends Action{

public function index(){

//1.创建一个基础模型

// //一:实例化一个系统的数据库操作类

// //new Model('User')相当于M('User'),在Model中放置一个需要操作的表

// //1命名:

// // thinkphp默认的有表名前缀,如果为think_user;则在Model中可以使用User或者user来获取

// // 如果是think_user_message;则使用Model('UserMessage');大写表示对于的表名前面加上一个_

// $User=new Model('User');

// //调用查询方法

// $list=$User->select();

// dump($list);

// //二:跨模型操作;实例化一个表,同时实例化一个自己写的数据库操作类

//多用于将一些公共的业务逻辑抽离出来形成公共的Model

// //M('user','CommonModel')相当于new CommonModel('user');model是自动载入的

//// $user=M('user','CommonModel');

// $user=new CommonModel('user');

// $list=$user->select();

// dump($list);

// $user->modelTest();

//三:实例化一个用户定义的模型

//多用于不需要更加复杂的业务

//1.手动创建一个模型,针对user表创建一个自定义模型,可以封装thinkphp提供的功能

//$user=new UserModel()相当于D('user');

//D方法如果模型不存在,则抛出异常,只会实例一个,默认,只支持调用当前应用下面的模型

// $user=new UserModel();

// $list=$user->select();

// dump($list);

// $user->modelTest();

//四、实例化一个空模型;就是传统sql语句的方式;需要加表前缀

//

$user=new Model();

$list=$user->query('select * from tb_user');

dump($list);

//分组:D('admin.user');

}

}

?>

两个模型:

[php]

class CommonModel extends Model{

function modelTest(){

echo '测试的跨模型操作,调用模型中的方法';

}

}

?>

[php]

class UserModel extends Model{

function modelTest(){

echo '测试的跨模型操作,调用模型中的方法';

}

}

?>