我有日期时间字符串:
2016-11-01 15:04:19
如何将日期和时间分开?
碳带有多个
setters
和getters
。
http://carbon.nesbot.com/docs/#api-getters
如果您有一个日期时间字符串并且想要将其与
Carbon
实例一起使用,您可以这样做:
$date = \Carbon\Carbon::parse('2016-11-01 15:04:19');
然后你可以这样做:
$date->format('Y-m-d')
$date->format('H:i:s')
话虽这么说,如果您从
Eloquent
模型获取此日期时间,那么您应该查看 @AlexeyMezenin 或 @Christophvh 答案。
希望这有帮助!
你可以做
$model->created_at->format('Y-m-d');
格式化特定日期。仅当您的日期是 Carbon 实例时,此解决方案才有效。或者,您可以使用 Mutators 默认格式化日期,并在必要时将其设为 Carbon 实例。https://laravel.com/docs/5.3/eloquent-mutators#date-mutators
如果你的日期是Carbon对象,你可以这样做:
$date->toTimeString(); // Will output 14:15:16.
$date->toDateString(); // Will output 1975-12-25.
$date->toFormattedDateString(); // Will output Dec 25, 1975.
如果您将此日期存储在数据库中并且它不是 Carbon 实例,请使用 date mutator 它将日期转换为 Carbon 的实例:
protected $dates = [
'custom_date',
];
如果您从其他来源获取日期,您可以创建一个 Carbon 实例和
parse()
日期:
Carbon::parse($custom_date);
此后您可以使用上面列出的方法。
Laravel 模型的serializeDate 函数可用于更改不同日期属性的日期格式。此方法允许您选择需要格式化日期的格式。
protected function serializeDate($date){
return $date->format('Y-m-d');
}