php psr4 控制器调用模型,控制器中调用模型更新数据
> ## 在控制器中调用模型进行更新数据
### 1. 查找并更新(需要知道主键,不需要构造键名和表字段对应的数组)
```
$user = User::get(1);
$user->name = 'thinkphp';
$user->save();
```
### 2. 推荐:直接更新(根据指定条件更新,需要构造键名和表字段对应的数组)
```
$user = new User;
// save方法第二个参数为更新条件
$user->save([
'name' => 'thinkphp',
'email' => 'thinkphp@qq.com'
],['id' => 1]);
```
### 3. 过滤非数据表字段
```
$user = new User();
// 过滤post数组中的非数据表字段数据
$user->allowField(true)->save($_POST,['id' => 1]);
```
### 4. 允许指定字段更新
```
$user = new User();
// post数组中只有name和email字段会写入
$user->allowField(['name','email'])->save($_POST, ['id' => 1]);
```
### 5. 批量更新数据(仅支持根据主键更新)
```
$user = new User;
$list = [
['id'=>1, 'name'=>'thinkphp', 'email'=>'thinkphp@qq.com'],
['id'=>2, 'name'=>'onethink', 'email'=>'onethink@qq.com']
];
$user->saveAll($list);
// 强制更新非插入
$user = new User;
$list = [
['id'=>1, 'name'=>'thinkphp', 'email'=>'thinkphp@qq.com'],
['id'=>2, 'name'=>'onethink', 'email'=>'onethink@qq.com']
];
$user->isUpdate()->saveAll($list);
```
### 6. 通过数据库类更新数据
```
$user = new User;
$user->where('id', 1)
->update(['name' => 'thinkphp']);
// 如果包含主键则无需where
$user->update(['id' => 1, 'name' => 'thinkphp']);
// 如果条件更复杂还可以用闭包
$user->save(['name' => 'thinkphp'],function($query){
// 更新status值为1 并且id大于10的数据
$query->where('status', 1)->where('id', '>', 10);
});
```
### 7. 显式插入和更新
```
// 显式指定当前操作为新增操作
$user = User::get(1);
$user->name = 'thinkphp';
$user->isUpdate(false)->save();
// 显式指定更新数据操作
$user = new User;
$user->isUpdate(true)
->save(['id' => 1, 'name' => 'thinkphp']);
```
php psr4 控制器调用模型,控制器中调用模型更新数据相关推荐
- 四足动物模型控制中的模型自适应神经网络
四足动物模型控制中的模型自适应神经网络 (Mode-Adaptive Neural Networks for Quadruped Motion Control) 四足动物模型拥有不同的步态,比如行走, ...
- 视频脚本: 完全模型组中的模型
01 完全模型组 今天收到百度刘聪琳发送过来的完全模型组的比赛细则, 同时也把比赛中的立体模型造型照片也给发送过来了. 看来明年将是一个大获丰收的年份. 比赛细则明天公布, 下面让我们逐个来欣赏一 ...
- SQLServer 中存储过程返回的三种方式( 包括存储过程的创建, 在存储过程中调用, 在VS中调用的方法)...
存储过程有三种返回: 1. 用return返回数字型数据 2. 用返回参数返回结果,可以返回各种数据类型(通过游标来循环查询结果每一行) 3. 直接在存储过程中用select返回结果集,可 ...
- 【Groovy】Groovy 脚本调用 ( Java 类中调用 Groovy 脚本 )
文章目录 前言 一.Groovy 类中调用 Groovy 脚本 1.参考 Script#evaluate 方法分析 Groovy 类中调用 Groovy 脚本 2.创建 Binding 对象并设置 a ...
- 【Groovy】Groovy 脚本调用 ( Groovy 类中调用 Groovy 脚本 | 创建 GroovyShell 对象并执行 Groovy 脚本 | 完整代码示例 )
文章目录 一.Groovy 类中调用 Groovy 脚本 1.创建 GroovyShell 对象并执行 Groovy 脚本 2.代码示例 二.完整代码示例 1.调用者 Groovy 脚本的类 2.被调 ...
- 【Groovy】Groovy 脚本调用 ( Groovy 类中调用 Groovy 脚本 | 参考 Script#evaluate 方法 | 创建 Binding 对象并设置 args 参数 )
文章目录 一.Groovy 类中调用 Groovy 脚本 1.参考 Script#evaluate 方法分析 Groovy 类中调用 Groovy 脚本 2.创建 Binding 对象并设置 args ...
- 【Groovy】Groovy 脚本调用 ( Groovy 脚本中调用另外一个 Groovy 脚本 | 调用 evaluate 方法执行 Groovy 脚本 | 参数传递 )
文章目录 一.Groovy 脚本中调用另外一个 Groovy 脚本 1.调用 evaluate 方法执行 Groovy 脚本 2.参数传递 二.完整代码示例 1.调用者 Groovy 脚本 2.被调用 ...
- html中怎样调用xml,HTML中调用XML数据实例
首先:我们要弄明白HTML和XML区别: XML 不是 HTML 的替代: XML 和 HTML 为不同的目的而设计: XML 被设计为传输和存储数据,其焦点是数据的内容: HTML 被设计用来显示数 ...
- JavaScript函数调用方式:简单调用+在超链接中调用JavaScript函数+在事件中调用JavaScript函数
简单的调用 <html> <head> <meta http-equiv="Content-Type" content="text/html ...
- ansys matlab 调用,在matlab中调用ansys的方法 [转,原创:Elvin]
很多人都关心在matlab里如何调用ansys计算,我也曾经困惑过一段时间,到各个论坛去找资料,问大家,但是没有一个非常明确的答案.有很多在c语言和forthan中调用ansys的资料,但是对matl ...
最新文章
- 狼奔代码生成工具使用心得
- Django博客系统(首页用户名展示)
- 985博导给学生改论文,第一篇心态就崩了!
- 用jk触发器构成二分频电路_深入了解数字电路之时序电路
- 惠普服务器bios查看硬件属性,查看硬件信息
- 孩子数学成绩不好怎么办_孩子数学成绩不好怎么办
- Android 向服务器发送XML数据及调用webservice
- 20 个百无一用的 Firefox 扩展
- android app启动图标在哪里设置_APP启动图标设计方法!
- web测试和app测试的区别你知道吗?
- 【验证小白】只有SV+modelsim学验证(3)——加checker到环境中
- [FAQ10908][Message]开启固定拨号FDN功能(无法发短信的原因),发送信息时如何做FDN check
- Knowledge Tracing: A Survey阅读笔记
- 培养良好习惯的7个正确方法
- 我妹妹成了我的女儿——难道我真的中年大叔了?
- 大数据时代来临了,你需要了解什么是大数据
- 在 WPS Word中成功使用zetero
- www-authenticate
- 使用pycharm配置出现Conda executable path is empty问题
- LabWindows中Table控件的下拉列的设置