前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >TP6的注意事项

TP6的注意事项

作者头像
黄啊码
发布2021-09-26 10:35:30
4240
发布2021-09-26 10:35:30
举报
文章被收录于专栏:黄啊码【CSDN同名】

create()可以默认根据主键插入

save()需要指定id名称叫做id,create不需要

获取自增id

insert_data = this->model->create(

echo $insert_data->id;

//echo $this->model->getLastSql();

ThinkPHP5框架

代码语言:javascript
复制
 1 whereOr 方法
 2 
 3 使用whereOr 方法进行OR 查询:
 4 Db::table('think_user')
 5 ->where('name','like','%thinkphp')
 6 ->whereOr('title','like','%thinkphp')
 7 ->find();
 8 多字段相同条件的OR 查询可以简化为如下方式:
 9 Db::table('think_user')
10 ->where('name|title','like','%thinkphp')
11 ->find();

where 内部实现 精选or 条件拼接,一直没有找到合适的方法,不像tp3版本可以使用采用以下方法:

map['user_id'] = 1; map['status'] = 0; or_map['user_id'] = 1; or_map['audit']=['in',['1,2']]; where_main['_complex'] = array( map, or_map, '_logic' => 'or' );

代码语言:javascript
复制
tp5中采用闭包的方式:

map['user_id']=1; map['status']=0; or_map['user_id']=map['user_id']; or_map['audit']=['in',['1,2']]; list = Db::name('table')->where(function (query) use (map) { query->where(query) use (or_map) { query->where(pn*page_size)->select();

SELECT * FROM `tp_table` WHERE ( `user_id` = '1' AND `status` = 0 ) OR ( `user_id` = '1' AND `audit` IN ('1,2') )

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/05/27 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档