欢迎访问宙启技术站
智能推送

PHP日期和时间处理:常用函数大全

发布时间:2023-06-25 16:08:07

PHP是一种服务器端脚本语言,用于Web开发。在这篇文章中,我们将介绍PHP的日期和时间处理功能,包括常用的函数和用法。

1.时间戳(time)

时间戳是从1970年1月1日格林尼治标准时间(Unix时间戳)或者从2001年1月1日0时0分0秒开始的秒数(PHP时间戳)。

PHP中获取时间戳的方法是使用time()函数,该函数没有参数,返回当前时间的时间戳。

示例代码:

$timestamp = time();
echo $timestamp;

2.获取当前日期和时间(date)

PHP中获取当前日期和时间的方法是使用date()函数,该函数有两个参数, 个参数是日期格式化字符串,第二个参数是可选的时间戳,默认为当前时间戳。

示例代码:

$date = date('Y-m-d H:i:s');
echo $date;

在上面的示例中,我们使用了日期格式化字符串来格式化当前日期和时间。其中,Y表示四位年份,m表示两位月份,d表示两位日期,H表示24小时制小时数,i表示分钟,s表示秒。

3.将日期字符串转换为时间戳(strtotime)

PHP中将日期字符串转换为时间戳的方法是使用strtotime()函数,该函数有一个参数,即日期字符串。

示例代码:

$string = '2022-01-01 00:00:00';
$timestamp = strtotime($string);
echo $timestamp;

在上面的示例中,我们将一个日期字符串转换为了时间戳。

4.获取日期或时间的部分(date_parse)

PHP中获取日期或时间的部分的方法是使用date_parse()函数,该函数有一个参数,即日期字符串。该函数会返回一个关联数组,包括年、月、日、小时、分钟、秒等信息。

示例代码:

$string = '2022-01-01 00:00:00';
$result = date_parse($string);
print_r($result);

在上面的示例中,我们将一个日期字符串解析为了年、月、日、小时、分钟和秒。

5.获取日期和时间的差值(date_diff)

PHP中获取日期和时间的差值的方法是使用date_diff()函数,该函数有两个参数,即两个DateTime对象。该函数会返回一个DateInterval对象,包括年、月、日、小时、分钟和秒等信息。

示例代码:

$start = new DateTime('2022-01-01 00:00:00');
$end = new DateTime('2022-01-02 00:00:00');
$interval = date_diff($start, $end);
echo $interval->format('%d days');

在上面的示例中,我们计算了两个日期的差值,并将其格式化为以天为单位的字符串。

6.将时间戳转换为日期字符串(date)

PHP中将时间戳转换为日期字符串的方法是使用date()函数,该函数有两个参数, 个参数是日期格式化字符串,第二个参数是时间戳。

示例代码:

$timestamp = 1640976000;
$date = date('Y-m-d H:i:s', $timestamp);
echo $date;

在上面的示例中,我们将一个时间戳转换为了日期字符串。

7.计算日期的相对时间(strtotime)

PHP中计算日期的相对时间的方法是使用strtotime()函数,该函数有两个参数, 个参数是日期格式化字符串,第二个参数是时间戳。

示例代码:

$string = '2022-01-01 00:00:00';
$timestamp = strtotime($string . ' +1 day');
$date = date('Y-m-d H:i:s', $timestamp);
echo $date;

在上面的示例中,我们计算了一个日期的后一天,并将其转换为了日期字符串。

8.将日期字符串转换为DateTime对象(DateTime)

PHP中将日期字符串转换为DateTime对象的方法是使用DateTime()函数,该函数有一个参数,即日期字符串。

示例代码:

$string = '2022-01-01 00:00:00';
$datetime = new DateTime($string);
echo $datetime->format('Y-m-d H:i:s');

在上面的示例中,我们将一个日期字符串转换为了DateTime对象,并将其格式化为日期字符串输出。

9.将DateTime对象转换为时间戳(getTimestamp)

PHP中将DateTime对象转换为时间戳的方法是使用getTimestamp()方法,该方法没有参数,返回DateTime对象所表示的时间戳。

示例代码:

$datetime = new DateTime('2022-01-01 00:00:00');
$timestamp = $datetime->getTimestamp();
echo $timestamp;

在上面的示例中,我们将一个DateTime对象转换为了时间戳。

10.将日期字符串转换为指定格式的日期字符串(DateTime)

PHP中将日期字符串转换为指定格式的日期字符串的方法是使用DateTime()函数和format()方法,该函数有两个参数, 个参数是日期字符串,第二个参数是可选的DateTimeZone对象。format()方法有一个参数,即日期格式化字符串。

示例代码:

$string = '2022-01-01 00:00:00';
$datetime = new DateTime($string);
$date = $datetime->format('d/m/Y H:i:s');
echo $date;

在上面的示例中,我们将一个日期字符串转换为了指定格式的日期字符串。