传智黑马PHP69期-第7部分ThinkPhp-第2天TP-23_模型定义与模型设置
第7部分 ThinkPhp
第2天 TP
23_模型定义与模型设置
模型定义与模型设置
php think make:model 模块名/模型名(首字母大写) # 非必须 protected $pk = 'uid'; # 设置主键名称 protected $table = 'think_user'; #设置当前模型对应的完整数据表名称


添加数据
# 添加一条数据
# 方法1
$user = new User;
$user->name = 'thinkphp';
$user->email = 'thinkphp@qq.com';
$user->save();
# 方法2
$user = new User;
$user->save([
'name' => 'thinkphp',
'email' => 'thinkphp@qq.com'
]);
// 过滤post数组中的非数据表字段数据
$user->allowField(true)->save($_POST);
$user->allowField([要插入的字段,要插入的字段])->save($_POST);
# 方法3
$user = User::create([
'name' => 'thinkphp',
'email' => 'thinkphp@qq.com'
]);
echo $user->name;
# 添加多条记录
$user = new User;
$list = [
['name'=>'thinkphp','email'=>'thinkphp@qq.com'],
['name'=>'onethink','email'=>'onethink@qq.com']
];
$user->saveAll($list);

更新数据
# 方法1
$user = User::get(1); find
$user->name = 'thinkphp';
$user->email = 'thinkphp@qq.com';
$user->save();
# 方法2
$user = new User;
// save方法第二个参数为更新条件
$user->save([
'name' => 'thinkphp',
'email' => 'thinkphp@qq.com'
],['id' => 1]);
$user = new User;
// 过滤post数组中的非数据表字段数据
$user->allowField(true)->save($_POST,['id' => 1]);
# 方法3
User::where('id', 1)->update(['name' => 'thinkphp']);

删除数据
# 方法1 $user = User::get(1); $user->delete(); # 方法2 User::destroy(1); User::destroy([1,2,3]);

软删除
在实际项目中,对数据频繁使用删除操作会导致性能问题,软删除的作用就是把数据加上删除标记,而不是真正的删除,同时也便于需要的时候进行数据的恢复。




查询数据
# 查询单条记录
$user = User::where('name', 'thinkphp')->find();
# 查询多条记录
$list = User::where('status', 1)->limit(3)->order('id', 'asc')->select();
# 获取某个字段或者某个列的值
// 获取某个用户的积分
User::where('id',10)->value('score');
// 获取某个列的所有值
User::where('status',1)->column('name');
# 动态查询
// 根据name字段查询用户
$user = User::getByName('thinkphp');
posted on 2020-02-22 15:23 herisson_pan 阅读(9) 评论(0) 收藏 举报
浙公网安备 33010602011771号