如何解析YouTube返回日期到时间戳?
-
10-10-2019 - |
题
YouTube返回 Updated date
和 Submitted on
日期如下: 2010-08-22T04:46:18.000Z
是否有PHP功能或解析此的日期掩码?
解决方案
$dt = DateTime::createFromFormat("Y-m-d\TH:i:s.uP", "2010-08-22T04:46:18.000Z");
var_dump($dt);
// object(DateTime)#1 (3) {
// ["date"]=>
// string(26) "2010-08-22 04:46:18.000000"
// ["timezone_type"]=>
// int(2)
// ["timezone"]=>
// string(1) "Z"
// }
这使用 DateTime
班级。这是时区和分数秒的意识。显示日期使用 format
方法:
echo $dt->format("Y-m-d H:i:s e");
// 2010-08-22 04:46:18 Z
将日期转换为本地时区 setTimezone
方法:
$dt->setTimezone(new DateTimeZone(date_default_timezone_get()));
echo $dt->format("Y-m-d H:i:s e");
// 2010-08-21 21:46:18 America/Los_Angeles
其他提示
听上去像 strttime 就是您要寻找的。
编辑: 如果这不起作用,请看一下 日期和时间课 - 有指定格式解析日期的方法(像这样 - 不会直接返回时间戳,但是如果您从中构建了日期时间,则可以使用它 getTimestamp-方法)
尝试这个:
$date=substr("2010-08-22T04:46:18.000z",0,strlen("2010-08-22T04:46:18.000z")-1);
$stamp=strtotime($date);
最后,“ Z”似乎是Strttime的问题。
不隶属于 StackOverflow