如何在PHP中将日期转换为时间戳?

  时间:2017-07-28
本文章向大家介绍PHP中将日期转换为时间戳的几个实例,需要的朋友可以参考一下。

第一种方法:PHP strtotime()输出指定时间的时间戳

$timestamp = strtotime('22-09-2008');

 

第二种方法:

使用DateTimeAPI:

$dateTime = new DateTime('2008-09-22'); 
echo $dateTime->format('U'); 

// or 

$date = new DateTime('2008-09-22');
echo $date->getTimestamp();

与过程API相同:

$date = date_create('2008-09-22');
echo date_format($date, 'U');

// or

$date = date_create('2008-09-22');
echo date_timestamp_get($date);

如果由于您使用的是不受支持的格式而导致上述操作失败,则可以使用

$date = DateTime::createFromFormat('!d-m-Y', '22-09-2008');
echo $dateTime->format('U'); 

// or

$date = date_parse_from_format('!d-m-Y', '22-09-2008');
echo date_format($date, 'U');

请注意,如果未设置!,则时间部分将设置为当前时间,这与前四个时间不同,后者将在省略时间时使用午夜。

另一种方法是使用IntlDateFormatterAPI:

$formatter = new IntlDateFormatter(
    'en_US',
    IntlDateFormatter::FULL,
    IntlDateFormatter::FULL,
    'GMT',
    IntlDateFormatter::GREGORIAN,
    'dd-MM-yyyy'
);
echo $formatter->parse('22-09-2008');

除非您使用本地化的日期字符串,否则更容易的选择可能是DateTime。

 

第三种方法:

使用mktime:

list($day, $month, $year) = explode('-', '22-09-2008');
echo mktime(0, 0, 0, $month, $day, $year);

原文地址:http://www.manongjc.com/article/2002.html