> 官网手册[https://www.kancloud.cn/manual/thinkphp5\_1/354001](https://www.kancloud.cn/manual/thinkphp5_1/354001)
## 官方推荐写法如下
1、`insert`方法添加数据成功返回添加成功的条数,通常情况返回 1
~~~
$data = ['foo' => 'bar', 'bar' => 'foo'];
Db::name('user')->insert($data);
~~~
2、`insertGetId`返回新增数据的自增主键
~~~
$data = ['foo' => 'bar', 'bar' => 'foo'];
$userId = Db::name('user')->insertGetId($data);
~~~
> 注意官方写法需要引入命名空间
~~~
use think\Db;
~~~
3、使用助手函数`db`,我习惯这样来写,直接返回增加的自增主键
~~~
$id = db('link')->insertGetId($data);
~~~
4、添加多条数据(一般不常用)
~~~
$data = [
['foo' => 'bar', 'bar' => 'foo'],
['foo' => 'bar1', 'bar' => 'foo1'],
['foo' => 'bar2', 'bar' => 'foo2']
];
Db::name('user')->insertAll($data);
~~~
## 添加数据完整示例
添加数据页面一般由两部分组成,一部分用于展示要添加的表单字段,一部分用于处理添加的逻辑并返回结果。以下代码为直接在控制器中进行逻辑处理的方式,虽不建议如此写,但却是学习ThinkPHP最快的方式。
~~~
//添加
public function add(){
if(request()->isPost()){ //判断是否POST提交
//获取所有提交的数据
$data=input('post.');
//排除id和name变量
//$data = Request::except('id,name');
$id = db('link')->insertGetId($data);
if($id){
$this->success('添加成功!','index');
}else{
$this->error('添加失败!');
}
}else{
return view();
}
}
~~~
- 序言
- ThinkPHP官方资源
- 术语
- 根目录
- php术语
- jwt
- 下载jwt
- 认识jwt
- 生成token
- 验证token
- lcobucci/jwt
- 安装
- 配置
- 生成token
- 解析令牌
- 验证令牌
- 扩展库jwt
- thinkPHP使用lcobucci/jwt
- phpmailer
- PHPMailer的使用
- phpMailer config
- 短信验证吗
- 阿里云短信验证码发送类
- 权限管理
- 基于thinkphp6.0
- 通用函数
- 密码加密
- 数组
- 数据库
- 查询数据
- 添加数据
- 删除数据
- 批量删除
- 更新数据
- 请求流程
- thinkphp6安装
- thinkphp6目录介绍
- 单应用
- 多应用
- 配置文件
- 模型,模板与Model的区别
- .env介绍
- 入口文件
- 控制器
- model层
- 视图层
- common公共函数
- 路由
- 命令行
- 常用thinkphp函数和方法
- 高德地图i定位城市
- 更新日志