工学1号馆

home

« | 返回首页 | »

tp5获取插入的数据的自增id

By Wu Yudong on February 25, 2019

今天在做项目的时候有一个需求,那就是插入数据库字段的时候,有个字段是path,形式类似“1-2-3-4”,最后一个数字必须是当前数据行的id值,这就必须在插入数据的同时获取当前插入行的id值,看了一下tp5的手册,

发现了两个方法有两个方法来实现类似的功能:getLastInsID与insertGetId

//insert方法新增数据并返回主键值使用getLastInsID方法:
Db::name('user')->insert($data);
$userId = Db::name('user')->getLastInsID();

// 使用insertGetId方法,返回当前插入行的id值
Db::name('user')->insertGetId($data);

有一个比较笨的办法,就是插入数据后再修改当前插入行的path字段的值,代码类似:

$lastId = Db::name('terms')->insertGetId($sldata);

$lastpath = $path.'-'.strval($lastId);
$res = Db::name('terms')->where('term_id', $lastId)->update(['path' => $lastpath]);

记录一下

如果文章对您有帮助,欢迎点击下方按钮打赏作者

Comments

No comments yet.
To verify that you are human, please fill in "七"(required)