php 年月日转换成时间戳

2023-11-29 22:52:42 举报文章

PHP是一种常用的服务器端脚本语言,广泛应用于Web开发。在进行日期和时间的处理时,有时候我们需要将年、月、日转换成时间戳,以便进行进一步的计算和操作。

时间戳是指从1970年1月1日00:00:00以来所经过的秒数。使用时间戳可以方便地进行日期和时间的计算,例如计算时间间隔、比较日期先后等等。

在PHP中,可以使用strtotime()函数将人类可读的日期和时间格式转换成时间戳。

举个例子,如果我们想将字符串“2021-07-01”转换成时间戳,可以使用以下代码:

//by www.qzphp.cn
<?php
$dateString = '2021-07-01';
$timestamp = strtotime($dateString);
echo $timestamp;
?>

运行上述代码,会输出一个整数,表示该日期的时间戳。

同样地,我们也可以将包含年、月、日、小时、分钟和秒的日期时间字符串转换成时间戳。例如,将字符串“2021-07-01 12:30:00”转换成时间戳的代码如下:

//by www.qzphp.cn
<?php
$datetimeString = '2021-07-01 12:30:00';
$timestamp = strtotime($datetimeString);
echo $timestamp;
?>

上述代码同样会输出一个整数,表示该日期时间的时间戳。

注意,strtotime()函数对于不同的日期时间格式有一定的要求。它可以识别大多数常用的日期时间格式,例如“Y-m-d”、“Y/m/d”、“m/d/Y”等格式。

如果字符串的格式不符合要求,strtotime()函数可能会返回一个错误的结果或者false。为了避免这种情况,我们可以在使用前先使用date_parse()函数来检查字符串的格式。

以下是一个检查日期格式合法性的例子:

//by www.qzphp.cn
<?php
$dateString = '2021/07-01';
$dateFormat = date_parse($dateString);
if ($dateFormat['error_count'] === 0 && $dateFormat['warning_count'] === 0) {
 $timestamp = strtotime($dateString);
echo $timestamp;
}
 else {
echo '日期格式不正确!';
}
?>

在上述例子中,如果日期格式不正确,将会输出“日期格式不正确!”。

除了使用strtotime()函数,我们还可以使用其他方法将年、月、日转换成时间戳。例如,可以使用mktime()函数:

//by www.qzphp.cn
<?php
$year = 2021;
$month = 7;
$day = 1;
$timestamp = mktime(0, 0, 0, $month, $day, $year);
echo $timestamp;
?>

上述代码通过指定年、月、日等参数,创建了一个表示该日期的时间戳。

总之,将年、月、日转换成时间戳在某些场景下十分有用。无论是使用strtotime()函数还是mktime()函数,我们都可以轻松地进行这样的转换,并方便地进行各种日期和时间的计算和操作。

如果你认为本文可读性较差,内容错误,或者文章排版错乱,请点击举报文章按钮,我们会立即处理!