让每一名学员高薪就业
返回列表 发新帖

盘点ThinkPHP5数据操作方法

[复制链接]

65

主题

217

帖子

2114

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2114

版主

发表于 2019-4-25 09:44:36  | 显示全部楼层 | 阅读模式
ThinkPHP5是一个优秀的PHP框架,在由国内的团队研发,有比较完整的中文参考文档,在国内的企业中应用面非常广泛。
ThinkPHP5是ThinkPHP3.2的升级版,版本差异非常大。
在新版本中提供了非常多好用的功能,今天我们来盘点一下ThinkPHP5中的数据操作方法。

1.      原生SQL实现数据操作
ThinkPHP5提供了两个方法实现对数据库SQL语句的执行:query 和 execute

1) query方法
query方法主要用于实现数据查询操作(select)
示例:
Db::query('select * from news where id=10');

2) execute方法
execute方法用于实现对数据的增、删、改操作(insert delete update)
示例:
Db::execute('insert into admin (id, name) values (?, ?)',[8,'admin']);

2.Db类(查询构造器)实现数据操作
Db类是ThinkPHP5提供的内置数据操作类,有非常多静态方法可直接调用执行

1) 新增数据
$data = ['name' => '张三', 'password' => '123456'];
Db::table('user')->insert($data);

2) 删除数据
Db::table('user')->where('name','张三')->delete();

3) 修改数据
Db::table('user')->where('name','张三')->update(['password'=>'888888']);

4) 查询数据
Db::table('news')->where('id',10)->find();
Db::table('news')->where('id',10)->select();
Db::name('news')->where('id',10)->find();
Db::name('news')->where('id',10)->select();

3.  模型实现数据操作
在控制器中可以实例化模型,再通过模型对象实现对数据进行操作

1) 新增数据
$user = new User;
$user->name = '李四';
$user->password = '123456';
$user->save();
$user = User::create([
    'name'  =>  '李四',
    'password' =>  '123456'
]);

2) 删除数据
$user = User::get(10); //获取指定主键的数据对象
$user->delete();
User::destroy(10);
User::where('id',10)->delete();

3) 修改数据
$user = User::get(1);
$user->name = '李四';
$user->password = '456789';
$user->save();
$user = new User;
$user->update(['id' => 1, 'name' => '李四爷']);

4) 查询数据
//获取单条数据
$user = User::get(1);
echo $user->name;  //可以对返回的模型对象进行调用字段名操作

//获取多条数据
$list = User::all(['status'=>1]);

4. 助手函数
助手函数是ThinkPHP5提供的简化类和对象调用的函数,非常有用。与数据库操作相关的可以使用以下这些:
1) db函数
db('user')->where('id',1)->find();
相当于:
Db::table('user')->where('id',1)->find();

// 添加单条数据
db('user')->insert($data);
相当于:
Db::table('user')->insert($data);

// 添加多条数据
db('user')->insertAll($list);
相当于:
Db::table('user')->insertAll($list);

2) model函数
// 使用model助手函数实例化User模型
$user = model('User');
// 模型对象赋值
$user->data([
    'name'  =>  '王五',
    'password' =>  '555555'
]);
$user->save();

ThinkPHP5框架中提供了非常多数据操作的方法,还有很多链式操作和聚合方法没有写,大家可以多多阅读参考手册并自己动手测试,会有非常多惊喜哦。

回复

使用道具 举报

0

主题

11

帖子

31

积分

菜鸟

Rank: 1

积分
31
发表于 2019-4-25 09:46:15  | 显示全部楼层
我逐字逐句地看完这个帖子
回复 支持 反对

使用道具 举报

0

主题

17

帖子

9

积分

菜鸟

Rank: 1

积分
9
发表于 2019-4-25 09:46:29  | 显示全部楼层
楼主是老师么
回复 支持 反对

使用道具 举报

0

主题

10

帖子

-2

积分

限制会员

积分
-2
QQ
发表于 2019-4-25 09:46:56  | 显示全部楼层
先回复一个再慢慢看
回复 支持 反对

使用道具 举报

0

主题

10

帖子

1

积分

菜鸟

Rank: 1

积分
1
发表于 2019-4-25 09:46:57  | 显示全部楼层
顶源码。
回复 支持 反对

使用道具 举报

0

主题

12

帖子

8

积分

菜鸟

Rank: 1

积分
8
发表于 2019-4-25 09:47:10  | 显示全部楼层
来源码培训的学费是多少
回复 支持 反对

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

推荐阅读

最新活动

联系我们

Java培训  |   PHP培训  |   UI培训  |   H5培训  |   Python培训  |   大数据培训  |   如何报名  |   视频下载
快速回复 返回顶部 返回列表