【发布时间】:2018-07-23 06:31:56
【问题描述】:
我有一个像“20180720171534449”这样的字符串,它是一种时间戳,有没有一种简单的方法可以使用 PHP 将其转换为对人类有意义的日期或日期和时间?
TIA
彼得
【问题讨论】:
我有一个像“20180720171534449”这样的字符串,它是一种时间戳,有没有一种简单的方法可以使用 PHP 将其转换为对人类有意义的日期或日期和时间?
TIA
彼得
【问题讨论】:
您有一个“YmdHisv”格式,其中 v 是毫秒。
毫秒不能用 date_create_from_format 解析(正如我今天发现的那样),所以你需要先用 substr 从字符串中删除它。
$s = "20180720171534449";
$date = date_create_from_format('YmdHis', substr($s,0,-3));
echo date_format($date, 'Y-m-d H:i:s'); //2018-07-20 17:15:34
正如 Ghost 所指出的,如果使用微秒 u 来代替毫秒,则毫秒是比喻。
$s = "20180720171534449";
$date = date_create_from_format('YmdHisu', $s);
echo date_format($date, 'Y-m-d H:i:s\.v'); //2018-07-20 17:15:34.449
【讨论】:
u 我以为是v。谢谢!