我有一个以这种方式格式化的日期:
class Foo
{
int a, b, c;
};
我需要的是将此日期,首先转换为时间戳,然后转换为其他格式,这是我的代码:
$data = 'lun, 19 giu 2017 16:30:00 GMT';
我在第二行收到此错误:
$date = DateTime::createFromFormat(DateTime::RSS, $data);
$timestamp_date = $date->getTimestamp();
$postdate = date("Y-m-d H:i:s", $timestamp_date);
我尝试将此值FATAL ERROR Uncaught Error: Call to a member function getTimestamp() on boolean in
更改为其他许多但尚无结果。
答案 0 :(得分:2)
IntlDateFormatter
类可用于解析国际日期格式:
$fmt = new IntlDateFormatter(
'it_IT',
IntlDateFormatter::FULL,
IntlDateFormatter::FULL,
'Europe/Rome',
IntlDateFormatter::GREGORIAN
);
$ts = $fmt->parse('lun, 19 giu 2017 16:30:00 GMT');
echo $ts, PHP_EOL, date('Y-m-d H:i:s', $ts);
1497889800
2017-06-19 18:30:00