如何在 PHP 中获取当前日期和时间
在本文中,我们将介绍在 PHP 中获取当前 date
和 time
的方法。
- 使用
date()
和time()
函数 - 使用
DateTime
对象
使用 date()
和 time()
函数获取 PHP 中的当前日期和时间
我们可以使用内置函数 date()
和 time()
以获取 PHP 中的当前日期和时间。这些功能显示当前日期和时间,与时区无关。使用这两个函数的正确语法如下。
date($format, $timestamp);
内置函数 date()
有两个参数。其参数的详细信息如下
参数 | 描述 | |
---|---|---|
$format |
强制性的 | 要显示的日期格式。它有多种变体。应该是一个字符串。 |
$timestamp |
可选的 | 获取 date 的时间戳。如果省略,则返回当前日期。 |
它返回根据指定格式设置的日期。
time();
time()
函数不接受任何参数。它返回当前的 PHP 时间戳。时间戳是自 Unix 纪元以来计算的秒数。
下面的程序显示了如何获取当前的日期和时间,而与时区无关。
<?php
$DateAndTime = date('m-d-Y h:i:s a', time());
echo "The current date and time are $DateAndTime.";
?>
格式 "m-d-Y h:i:s a"
指定了返回的带有月,日和 4 位数字年份值的日期,以及以小时,分钟和秒为单位的时间。
输出:
The current date and time are 05-20-2020 05:44:03 pm.
这里要注意的一件事是,没有根据某个时区设置时间。它是使用 Unix 时间戳显示的时间。如果要根据时区检查当前的 PHP time
,则需要手动设置时区。
例如,如果要检查阿姆斯特丹的当前时间,则必须手动设置阿姆斯特丹的时区。为此,使用了 PHP 函数 date_default_timezone_set()
。使用此函数的正确语法如下
date_default_timezone_set($timezone);
它仅接受一个参数。
参数 | 描述 | |
---|---|---|
$timezone |
强制性的 | 它是一个字符串,用于标识我们希望为其设置时区的区域。你可以在此处检查支持的时区列表。 |
该函数返回布尔值。如果时区设置成功,则返回 true
;否则,它返回 false
。
设置时区后,下面的程序将显示时间。
<?php
date_default_timezone_set('Europe/Amsterdam');
$DateAndTime = date('m-d-Y h:i:s a', time());
echo "The current date and time in Amsterdam are $DateAndTime.\n";
date_default_timezone_set('America/Toronto');
$DateAndTime2 = date('m-d-Y h:i:s a', time());
echo "The current date and time in Toronto are $DateAndTime2.";
?>
输出:
The current date and time in Amsterdam are 05-20-2020 08:08:42 pm.
The current date and time in Toronto are 05-20-2020 02:08:42 pm.
使用 DateTime
对象获取 PHP 中的当前日期和时间
在 PHP 中,DateTime
类用于处理与日期 date
和时间 time
有关的问题。此类的 format()
函数以指定的格式显示日期和时间。
我们将首先创建一个 DateTime
对象,然后调用 format()
函数以显示日期和时间。
$ObjectName = new DateTime();
$ObjectName->format($format);
函数 format()
接受一个参数。
参数 | 描述 | |
---|---|---|
$format |
强制性的 | 日期和时间的格式。应该是一个字符串。 |
显示当前日期和时间的示例程序如下。
<?php
$Object = new DateTime();
$DateAndTime = $Object->format("d-m-Y h:i:s a");
echo "The current date and time are $DateAndTime.";
?>
输出是具有指定格式的日期和时间。显示的时间是从 Unix Epoch 开始计算的时间。
输出:
The current date and time are 20-05-2020 06:21:06 pm.
如果要根据特定时区检查时间,则必须手动设置时区。为此,使用了 DateTime
类 setTimezone()
的 PHP 内置函数。使用此函数的正确语法如下。
$ObjectName = new DateTime();
$ObjectName->setTimezone(DateTimezone $timezone);
函数 setTimezone()仅接受一个参数。成功返回 DateTime
对象,失败返回 False
。
参数 | 描述 | |
---|---|---|
$timezone |
强制性的 | 它是一个 DateTimezone 对象,用于指定时区。你可以在此处检查支持的时区列表。 |
根据特定时区显示时间的示例程序如下。
<?php
$Object = new DateTime();
$Object->setTimezone(new DateTimeZone('Europe/Amsterdam'));
$DateAndTime = $Object->format("d-m-Y h:i:s a");
echo "The current date and time in Amsterdam are $DateAndTime.\n";
$Object->setTimezone(new DateTimeZone('America/Toronto'));
$DateAndTime = $Object->format("d-m-Y h:i:s a");
echo "The current date and time in Toronto are $DateAndTime.";
?>
输出:
The current date and time in Amsterdam are 20-05-2020 08:43:02 pm.
The current date and time in Toronto are 20-05-2020 02:43:02 pm.
相关文章 - PHP Date
- 如何在 PHP 中添加天数到日期
- 如何使用 PHP 计算两个日期之间的差
- 如何在 PHP 中将 DateTime 转换为字符串
- 如何在 PHP 中将字符串转换为日期和日期时间
- 如何在 PHP 中将一种日期格式转换为另一种日期格式