一 添加一条数据

1.实例化模型对象后

单一赋值并保存:

$user = new User;

$user->name = 'thinkphp';

$user->email = 'thinkphp@qq.com';

$user->save();

使用data 方法批量赋值:

$user = new User;

$user->data([

'name' => 'thinkphp',

'email' => 'thinkphp@qq.com'

]);

$user->save();

2.实例化的时候传入数据

$user = new User([

'name' => 'thinkphp',

'email' => 'thinkphp@qq.com'

]);

$user->save();

@1 过滤非数据表字段的数据:

$user = new User($_POST);

// 过滤post数组中的非数据表字段数据

$user->allowField(true)->save();

@2 指定某些字段写入

$user = new User($_POST);

// post数组中只有name和email字段会写入

$user->allowField(['name','email'])->save();

注意:

不要在同一个实例里面多次新增数据,否则后面的会插入不进去

例如

$user=new User();

$user->name = 'thinkphp';

$user->save();

$user->email = 'thinkphp@qq.com';

$user->save();

如果确实需要多次新增,那么可以用下面的方式:

// 第二次开始必须使用isupdate(false)函数指定为新增,否则被视为更新操作

$user->isUpdate(false)->save();

3.获取自增id

这里其实是获取模型的主键,如果你的主键不是id ,而是user_id 的话,其实获取自增ID就变成这

样:

$user = new User;

$user->name = 'thinkphp';

$user->email = 'thinkphp@qq.com';

$user->save();

// 获取自增ID

echo $user->user_id;

二 新增多条数据

saveAll 方法新增数据默认会自动识别数据是需要新增还是更新操作,当数据中存在主键的时候会认为是

更新操作

$user = new User;

$list = [

['name'=>'thinkphp','email'=>'thinkphp@qq.com'],

['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->saveAll($list, false);

@@ 通过遍历批量新增数据(筛选符合条件的数据单条插入):

$user = new User;

$list = [

['name'=>'thinkphp','email'=>'thinkphp@qq.com'],

['name'=>'onethink','email'=>'onethink@qq.com']

];

foreach($list as $data){

$user->data($data,true)->isUpdate(false)->save();

}

助手函数 model('User')快速实例化模型

$user=model('User');

php5.0 添加接口,Thinkphp5.0模型---插入数据相关推荐

  1. php 5.0打印数据库,thinkphp5.0数据库操作

    ThinkPHP数据库处理: 1.MySQL的数据库连接 首先配置database.php文件 使用{dump(config('database));}来查看数据库的配置项 使用 {$res = Db ...

  2. 动态分区添加的新字段无法插入数据

    我们在使用动态分区的进程中,有时候需要新增字段,新增之后,发现该字段一直为空,无论怎么插入数据,该字段值始终不变.过去的做法就是把表删了,重建带新字段的新表,问题就解决了,今天尝试了一种新的方法,也完 ...

  3. egg --- 配置连接mysql 创建模型 插入数据

    在egg中使用egg-sequelize插件 sequelize是与数据库操作相关的库 安装: npm install --save egg-sequelize mysql2 在egg中配置seque ...

  4. thinkphp 5.0 php7.2,thinkphp5.0生命周期

    1.入口文件 用户发起的请求都会经过应用的入口文件,通常是 public/index.php文件.当然,你也可以更改或者增加新的入口文件. 通常入口文件的代码都比较简单,一个普通的入口文件代码如下: ...

  5. JS 数组常用函数(数组合并、数组转字符串、顺序反转、范围选择、排序、插入数据、删除数据)

    创建数组 var mycars = new Array(); mycars[0] = "Saab"; mycars[1] = "Volvo"; mycars[2 ...

  6. SqlService基础一篇搞定(建库建表、插入数据、修改和删除数据、基础查询、条件查询、模糊查询、聚合函数、分组查询、多表查询)

    SqlService基础知识总汇 前言 一.SQLSERVER建库建表 1.检查数据库名是否存在 2.创建数据库 3.建表 4.修改表结构 5.删除添加约束 二.SQLSERVER插入数据 1.向部门 ...

  7. Redis大批量插入数据

    Redis进阶实践之十六 Redis大批量增加数据 一.介绍 有时候,Redis实例需要在很短的时间内加载大量先前存在或用户生成的数据,以便尽可能快地创建数百万个键.这就是所谓的批量插入,本文档的目标 ...

  8. ThinkPHP5.0教程学习06:TP5 数据库与模型操作

    学习教程来源于: php中文网 ThinkPHP5 视频教程 ThinkPHP5.0完全开发手册 连接器与查询构造器 TP5采用的是惰性连接,故而仅在查询时才会连接到数据库 TP5的数据库操作对底层进 ...

  9. think PHP5.0小程序,微信小程序ofo小黄车+thinkphp5.0打造全栈应用

    链接 简介 本项目是采用PHP语言,THINKPHP5.0框架开发的全栈应用系统.在开发这个项目时,微信还没有OFO微信小程序,又不想下载APP去使用,只能在支付宝上面使用OFO,偶然间发现某人写了一 ...

最新文章

  1. 发微信模版消息换行用\n
  2. python怎么用excel-python怎么连接excel
  3. 汇编语言--可屏蔽中断
  4. 计算机xp怎么做备份,怎样备份xp系统电脑上的所有数据?在xp系统中备份所有文件的方法...
  5. Java8 Stream详解~归约(reduce)
  6. java年份换算_java中日期的换算处理
  7. Linux知识框架梳理
  8. [RHCSA学习笔记]Autofs实现自动挂载NFS共享
  9. SpringBoot整合JDBC数据库操作第二弹-配置基本数据库连接源
  10. linux syslog 删除文件_Linux不小心删除日志文件syslog如何恢复
  11. 40. Use multiple inheritance judiciously
  12. PHP中的e标签和em标签一样吧,html em标签的作用
  13. cppcheck下载及使用
  14. 树莓派入门(六)之控制舵机、伺服电机的驱动代码
  15. 树莓派3 linux,树莓派
  16. 项目质量管理的三个重要流程
  17. 读书笔记之C Primer Plus 6
  18. MapReduce论文中文版--The Google File System
  19. 数字图像与机器视觉基础补充(2)--颜色转换+分割车牌
  20. python爬取图片然后保存在文件夹中

热门文章

  1. 一道Python面试题,设置一个动态变量名
  2. 使用 Python 实现鼠标键盘自动化
  3. MySQL 重中之重 [ 事物 ]
  4. 【CCF】201709-2公共钥匙盒
  5. Python学习杂记之静态网页学习
  6. 漫步线性代数十——线性无关,基和维数
  7. 字符编码、常见字符集解析(ASCII、Unicode、UTF-8、GB2312等)
  8. Pytorch —— 损失函数(二)
  9. 改善深层神经网络:超参数调整、正则化以及优化——2.5 指数加权平均的偏差修正
  10. 深度学习的实用层面 —— 1.3 机器学习基础