我如何从例如获取时间戳22-09-2008
?
最佳答案
此方法适用于 Windows 和 Unix并且 可识别时区,如果您愿意,这可能是您想要的与 dates 合作.
如果您不关心时区,或者想使用您的服务器使用的时区:
$d = DateTime::createFromFormat('d-m-Y H:i:s', '22-09-2008 00:00:00');
if ($d === false) {
die("Incorrect date string");
} else {
echo $d->getTimestamp();
}
1222093324 (这取决于您的服务器时区...)
如果你想指定在哪个时区,这里是 EST。 (与纽约相同。)
$d = DateTime::createFromFormat(
'd-m-Y H:i:s',
'22-09-2008 00:00:00',
new DateTimeZone('EST')
);
if ($d === false) {
die("Incorrect date string");
} else {
echo $d->getTimestamp();
}
1222093305
$d = DateTime::createFromFormat(
'd-m-Y H:i:s',
'22-09-2008 00:00:00',
new DateTimeZone('UTC')
);
if ($d === false) {
die("Incorrect date string");
} else {
echo $d->getTimestamp();
}
1222093289
无论如何,在将字符串解析为结构化数据时,严格始终是一个很好的起点。以后可以省去麻烦的调试。因此我建议始终指定日期格式。
关于php - 如何在 PHP 中将日期转换为时间戳?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/113829/