登录  /  注册
首页 > php框架 > ThinkPHP > 正文

关于最新版ThinkORM对于时间字段的调整

藏色散人
发布: 2021-04-16 09:43:02
转载
2018人浏览过

下面由thinkphp教程栏目给大家介绍关于最新版thinkorm对于时间字段的调整,希望对需要的朋友有所帮助!

关于最新版ThinkORM对于时间字段的调整

不少用户在升级6.0最新版本框架后出现了获取不到时间字段原始值的情况,这是因为think-orm库的一个最新调整导致的。

在最新的ThinkORM中,字段类型和时间字段的自动处理不再纳入获取器范畴,而是在查询到结果后的第一时间就进行了处理,避免以后每次调用数据的时候都要进行一次额外的检测和处理。而由于不再纳入获取器,所以导致无法获取这些字段的原始值,包括设置了类型转换的字段和自动时间处理字段。

时间字段的自动处理是框架提供的实现时间字段(包括create_time和update_time,支持自定义字段名)的自动写入和自动输出转换功能。

如果你需要获取时间字段的原始值,那么需要关闭自动时间字段处理功能,也就是设置autoWriteTimestamp属性为false,然后对时间字段自定义获取器接管时间字段的输出,并且记得一旦关闭自动时间字段处理,时间字段的数据写入必须手动写入。

如果你希望时间字段自动写入处理,但不希望进行自动格式化输出,可以设置dateFormat属性为false。如果在数据库配置文件中设置的话,应该如下设置:

// 自动写入时间戳字段
// true为自动识别类型 false关闭
// 字符串则明确指定时间字段类型 支持 int timestamp datetime date
'auto_timestamp'  => true,
 
// 时间字段取出后的默认时间格式
'datetime_format' => false,
登录后复制

think-orm升级到最新版本已经修正上述问题,但注意获取原始数据最好是用getOrigin方法替代getData方法,如果你需要在定义的获取器方法中读取原始的时间字段数据,应该用$this->origin['create_time']而不是用 $data['create_time']或者$this->data['create_time']。

相关推荐:最新的10个thinkphp视频教程

以上就是关于最新版ThinkORM对于时间字段的调整的详细内容,更多请关注php中文网其它相关文章!

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
来源:thinkphp网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
关于CSS思维导图的课件在哪? 课件
凡人来自于2024-04-16 10:10:18
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号