本文实例讲述了thinkphp5.1框架实现格式化mysql时间戳为日期的方式。分享给大家供大家参考,具体如下:
方式一
使用mysql函数FROM_UNIXTIME(unix_timestamp,format)直接转换
1
|
select FROM_UNIXTIME(o.create_time, '%Y-%m-%d' ) create_time from table
|
方式二
使用模型获取器 withAttr, 在该方法中用date函数格式化
1
2
3
4
5
|
->field( '*' )
->withAttr( 'create_time' , function ( $value , $data ) {
return date ( "Y-m-d H:i" , $value );
})
->select()
|
方式三
使用模型的自动时间戳,开启后会默认自动转换create_time和update_time两个字段的值
第一种方式是全局开启,在数据库配置文件中进行设置:
1
2
3
4
|
// 开启自动写入时间戳字段
'auto_timestamp' => true,
// 时间字段取出后的默认时间格式
'datetime_format' => 'Y-m-d H:i:s' ,
|
第二种是在需要的模型类里面单独开启:
1
2
3
4
5
6
7
|
<?php
namespace app\index\model;
use think\Model;
class User extends Model
{
protected $autoWriteTimestamp = true;
}
|
方法四
forerch 循环里 date函数格式化
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。
原文链接:https://blog.csdn.net/flysnownet/article/details/90172875