首页
课程
圈子
文章
交流群
文档
工具
vscode代码片段
字幕提取
登录
首页
课程
圈子
文章
交流群
文档
工具
vscode代码片段
字幕提取
FastAdmin Thinkphp5 中关于 whereTime不生效的一个小
2024-10-10 21:14:20
397
0
0
0
文章目录
开通会员
解锁全部文章权限
立即开通
小程序码
扫一扫在小程序看此文章
热门文章
vscode里如果出现中文空格标出黄色突出显示,怎么去掉?
3345
php基础入门课程资料文档课件实战源码
3063
wordpress主题开发文档资料下载
2321
vscode插件code runner详细配置说明
2208
php进阶课程文档资料下载
1815
使用ffmpeg将mp4格式转为m3u8
1387
phpstudy怎么手动安装php8.3.0版本?
1199
推荐2款mac电脑里非常好用的php集成开发环境
1179
fastadmin监听或重写删除编辑按钮事件
1099
整理下php学员遇到的一些问题
1036
### 数据表如下 ```php create table fa_test ( id int unsigned auto_increment comment 'ID' primary key, user_id int(10) default 0 null comment '会员ID', year year null comment '年', times time null comment '时间', refreshtime bigint(16) null comment '刷新时间', createtime bigint(16) null comment '创建时间', updatetime bigint(16) null comment '更新时间', deletetime bigint(16) null comment '删除时间', delete_time int(10) null ) comment '测试表' collate = utf8mb4_unicode_ci; ``` ### 源代码如下 ```php $startTime='2022-09-01 00:00:00'; $end='2022-09-01 00:00:00'; $range=[$startTime,$end]; //定义个时间区间 //这里关联的定义为 /** public function cate() { return $this->belongsTo(Category::class, 'cate_id', 'id', [], 'LEFT')->setEagerlyType(0); } */ $list = $this->model ->with(['cate']) ->whereTime('updatetime','between',$range) ->whereTime('createtime','between',$range) ->whereTime('delete_time','between',$range) ->whereTime('time','between',$range) ->whereTime('year','between',$range) ->whereTime('refreshtime','between',$range) ->whereTime('cate.createtime','between',$range) ->buildSql(); //打印执行的sql语句 print_r($list); ``` ### 输入结果为 ```sql SELECT * FROM `fa_test``test` LEFT JOIN `fa_category``cate` ON `test`.`cate_id` = `cate`.`id` WHERE ( `updatetime` BETWEEN 1661961600 AND 1661961600 AND `createtime` BETWEEN 1661961600 AND 1661961600 AND `delete_time` BETWEEN 1661961600 AND 1661961600 AND `time` BETWEEN '2022-09-01 00:00:00' AND '2022-09-01 00:00:00' AND `year`BETWEEN '1661961600'AND '1661961600' AND `refreshtime` BETWEEN 1661961600 AND 1661961600 AND `cate`.`createtime` BETWEEN '1661961600' AND '1661961600' ) ``` ### 结论 1.whereTime 的字段,必须为数据表中存在的字段,才会解析为时间戳; 2.对于关联模型的字段有同样的要求; 3.无论数据表中的字段类型是int还是其他类型, 都会解析为时间戳
0
0
铜牌 · 会员
解锁全部文章
全部课程8折购买
如果在b站充值了专属会员,可联系猫叔直接开通相同时间的此会员
¥
50
/年
立即购买
金牌 · 会员
解锁全部文章
全部课程5折购买
微信一对一答疑
优先解决问题
¥
1999
/年
立即购买