搜索
系统检测到您的用户名不符合规范:

thinkphp6.0.12版本Collection类toArray方法隐性BUG

浏览:2274 发布日期:2022年02月02日
5.0.0 - 严重 - 未处理
以left join方式(其它方式没有试)得到的数据,日期时间类型值会被toArray转换归零。其它类型又正常,通过表直接取得的数据(不是通过连接表取得)转换也正常。

数据库类型:mysql 8
字段类型:`create_time`、`update_time` 均为 datetime类型,`code` 为 varchar 类型。

1. 表连接语句
->leftJoin("{$bill}", "{$bill}.id = {$alias}.fk")
->field(["{$bill}.code", "{$bill}.create_time", "{$bill}.update_time"])

2. select直接得到的数据
"id" => 106
"fk" => 44
"code" => "PR2111200001" // 来自bill表正常
"create_time" => "2021年11月20日 18:05:48" // 来自bill表正常
"update_time" => "2022年01月30日 17:21:40" // 来自bill表正常

3. 通过toArray转换后得到的数据
"id" => 106
"fk" => 44
"code" => "PR2111200001" // toArray转换后正常
"create_time" => "1970年01月01日 08:33:41" // toArray转换后被归零
"update_time" => "1970年01月01日 08:33:42" // toArray转换后被归零
评论()
后面还有条评论,
评论支持使用[code][/code]标签添加代码
您需要登录后才可以评论 登录 | 立即注册
提交Bug
free365
积分:108 等级:LV1

我们

合作

网站

信息

ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。

AltStyle によって変換されたページ (->オリジナル) /