将 Unix 时间戳转换为 Carbon 对象

问题描述 投票:0回答:3

我的表中有一个 Unix 时间戳,想要使用 Carbon 将其转换为人类可读的格式。我怎样才能实现这个目标?

例如

1487663764.99256

2017-02-24 23:23:14.654621
laravel php-carbon
3个回答
235
投票

您检查了碳文档吗?我想这就是您要找的:

Carbon::createFromTimestamp(-1)->toDateTimeString(); 

结帐http://carbon.nesbot.com/docs/#api-instantiation


34
投票

Carbon 文档中描述了多种创建 Carbon 实例的方法,该文档链接在项目自述文件的底部。相关部分是这样的:

最后两个创建函数用于处理 unix 时间戳。第一个将创建一个等于给定时间戳的 Carbon 实例,并设置时区或默认为当前时区。第二个 createFromTimestampUTC() 的不同之处在于时区将保留 UTC (GMT)。第二个行为与 Carbon::createFromFormat('@'.$timestamp) 相同,但我只是让它更明确一点。负时间戳也是允许的。

所以你可以这样做:

$carbon = Carbon::createFromTimestamp($dbResult['SomeTimestampColumn']);
    

5
投票
如果您真的喜欢流畅的方法调用,并且对使用构造函数时所需的额外行或丑陋的括号感到沮丧,那么您会喜欢解析方法:

Carbon::parse(1487663764); Carbon::parse('first day of next month');
    
© www.soinside.com 2019 - 2024. All rights reserved.