【问题标题】:How to convert Datetime value to date time如何将日期时间值转换为日期时间
【发布时间】:2017-01-10 09:42:29
【问题描述】:
我的客户提供了一个日期时间值20170109221930。我不明白如何将此值转换为日期时间。我也无法理解客户给我的格式 (20170109221930)?
【问题讨论】:
标签:
php
laravel
datetime
laravel-5.3
php-carbon
【解决方案1】:
使用 createFromFormat 从字符串创建日期时间。然后你可以使用 format 来格式化它。
$string = '20170109221930';
var_dump(DateTime::createFromFormat('YmdHis', $string));
输出:
ei@localhost:~$ php test.php
object(DateTime)#1 (3) {
["date"]=>
string(19) "2017-01-09 22:19:30"
["timezone_type"]=>
int(3)
["timezone"]=>
string(14) "Asia/Chongqing"
}
【解决方案2】:
由于您使用的是 Laravel,您可以使用 Carbon's parse() 或 createFromFormat() 方法:
$dateObject = Carbon::parse('20170109221930');
之后,您将能够使用数十种 Carbon 方法将此时间戳转换为您想要的任何格式:
$dateObject->format(h:i:s);
$dateObject->toDateTimeString();