Model
在上面那篇博客中只是介绍了Model的架构 应该放在什么位置 在哪个命名空间等
在控制器的查询也是通过获得Model对象来操作数据
在这里我们在系统的说一下利用模型的增删改查以及模型可以完成的特殊工作
增
#增加单个数据
$d = new Bbs();
$d->data(['name'=>'mmmm','content'=>'nnnnnnn']);
$d->save();
return $d->id;
#增加多个数据
$d = new Bbs();
$list = [
['name'=>'thinkphp','content'=>'thinkphp@qq.com'],
['name'=>'onethink','content'=>'onethink@qq.com']
];
$res =$d->saveAll($list);
dump($res);//saveAll方法新增数据返回的是包含新增模型(带自增ID)的数据集(数组)。
开发手册上提供了很多新增的方法 这里简单说两种 第一种增加单个数据 先实例化 在调用data方法传入数据 在保存 save() ; 返回自增长id return $d->id;
传入多个数据 实例化 准备数组 saveAll($list);
我们可以把实例化的过程用助手函数model(‘data’);来代替
删
#删除单个数据
$res = Bbs::destroy(1);
return $res ? '删除成功':'删除失败';
#删除多个数据
$res = Bbs::destroy(70,71,72);//可以直接传入数组
return $res ? '删除成功':'删除失败';
#条件删除
Bbs::where('id','>','50')->delete();//依靠数据库类
删除主要说了 删除单个 删除多个 按条件删除这三种方式 其中第三种方式是依靠数据库类而不是模型
改
#更新一个数据
$res = Bbs::get(2);
$res->name="test";
$res->content="test";
$res->save();
#更改多个数据
$res = new Bbs();
$list=[['id'=>3,'name'=>'test','content'=>'tset'],['id'=>4,'name'=>'test','content'=>'tset']];
$res->saveAll($list);
查
#查询一个数据
$res =Bbs::get(2);
$res = $res->toArray();
dump($res);
#查询多个数据 返回的就是一个数组
$data = Bbs::All(2,3,4,5,6