请教laravel想从数据库查询created_at字段中的时和分(忽略年月日和秒)怎么写

laravel想从数据库查询created_at字段中的时和分(忽略年月日和秒)怎么写,例如现在created_at字段值是2021-09-17 22:33:45,怎么样写能只返回22:33。

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 10
laradocs

$model->created_at->format ( 'H:i' );

2年前 评论
无谓 2年前
yizhu (楼主) 2年前
laradocs (作者) 2年前

可直接用时间戳

2年前 评论
Complicated

你是想查询时分,还是向只是返回的时候显示时分?

2年前 评论
yizhu (楼主) 2年前
Complicated (作者) 2年前
随波逐流

一楼已经是答案了. 如果不会用Carbon 可以使用原生方法,也是ok的.

echo  date('H:i',strtotime($created_at));
2年前 评论

后端处理,或者前端处理.一般是前端的活

2年前 评论

或者使用访问器来实现

2年前 评论
mouyong

SQL: select DATE_FORMAT() as your_field from some_table where some_condition;

2年前 评论
Model::select([
            DB::raw("date_format(created_at,'%Y-%m-%d %H:%i:00')")
        ])->first()
2年前 评论
porygonCN

模型里添加getCreatedAtAttribute()方法

use Carbon\Carbon;//或者Illuminate\Support\Carbon
public function getCreatedAtAttribute($val){
    return $val?Carbon::parse($val)->format("H:i"):null;
}

至少 我用format()方法后返回的是 11:47

2年前 评论

1、查出来后转换

date('H:i',strtotime($oUser->created_at));

2、使用数据库 DATE_FORMAT(created_at,”%H:%i”) 函数

select DATE_FORMAT(created_at,"%H:%i") as d from tables
2年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!