如何使用Carbon从"created_at"中提取时间

ses*_*360 3 php laravel php-carbon

我仍在努力解决Laravel框架内的碳功能问题.我创建了我的模型中使用的这些函数来提取表格中"created_at"字段的日期:

public function getCreatedAtAttribute($date) {
    return Carbon::createFromFormat('Y-m-d H:i:s', $date)->format('d.m.Y');
}
Run Code Online (Sandbox Code Playgroud)

这适用于日期,但是我如何在此模型中编写一个函数,它只会在created_at字段中提取时间?

Rwd*_*Rwd 9

我觉得你限制自己很多都会覆盖日期的默认行为.

如果您删除了访问者(getCreatedAttribute),您将能够从属性本身调用格式,即

$model->created_at->format('d.m.Y')
Run Code Online (Sandbox Code Playgroud)

要么

$model->created_at->format('H:i:s');//e.g. 15:30:00
Run Code Online (Sandbox Code Playgroud)

Carbon只是一个包装DateTime.有关格式字符的列表,您可以在此处查看:http://php.net/manual/en/function.date.php, 例如今天的日期为2016年2月6日将是jS F Y

希望这可以帮助!


Muh*_*lam 7

尝试使用

public function getCreatedAtAttribute($date) {
    return Carbon::createFromFormat('Y-m-d H:i:s', $date)->format('H:i:s');
}
Run Code Online (Sandbox Code Playgroud)

输出将是时间