如何将Datetime值转换为日期时间

时间:2017-01-10 09:42:30

标签: php laravel datetime laravel-5.3 php-carbon

我的客户提供了日期时间值SELECT *, (SELECT COUNT(status) FROM business_likes) AS business_likes_count FROM `business_likes` LEFT JOIN information_business ON information_business.id = business_likes.business_id ORDER BY business_likes.id 。我无法理解如何将此值转换为日期时间。另外,我无法理解客户给我的格式(20170109221930)?

3 个答案:

答案 0 :(得分:2)

使用createFromFormat从字符串创建日期时间。然后你可以使用格式来格式化它。

$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"
}

答案 1 :(得分:1)

由于您使用的是Laravel,因此可以使用Carbon's parse()createFromFormat()方法:

$dateObject = Carbon::parse('20170109221930');

之后,您将能够使用数十种Carbon方法将此时间戳转换为您想要的任何格式:

$dateObject->format(h:i:s);
$dateObject->toDateTimeString();

答案 2 :(得分:0)

你可以在Laravel中使用Carbon方法:

{{ Carbon\Carbon::parse($your_time)->format('d.m.Y') }}
在您的视图文件中

您可以找到更多信息

https://laracasts.com/discuss/channels/general-discussion/use-carbon-at-blade-template?page=1