哪个PHP函数可以返回当前日期/时间?


当前回答

我们可以使用date函数设置默认时区:

<?php
    date_default_timezone_set("Asia/Kolkata");
    echo "Today is " . date("Y/m/d") . "<br>";
    echo "Today is " . date("Y.m.d") . "<br>";
    echo "Today is " . date("Y-m-d") . "<br>";
    echo "Today is " . date("l");
    echo "The time is " . date("h:i:sa");
?>

其他回答

你可以使用$_SERVER['REQUEST_TIME']变量或time()函数。这两个函数都返回Unix时间戳。

大多数情况下,这两个解决方案将产生完全相同的Unix时间戳。它们之间的区别是$_SERVER['REQUEST_TIME']返回最近服务器请求的时间戳,而time()返回当前时间。根据应用程序的不同,这可能会在准确性上产生微小的差异,但在大多数情况下,这两种解决方案都足够了。

根据上面的示例代码,一旦获得Unix时间戳,您将希望格式化此信息。未格式化的Unix时间看起来像:1232659628

因此,为了得到一些可以工作的东西,您可以使用date()函数来格式化它。

关于date()函数的使用方法,PHP手册中有很好的参考资料。

例如,下面的代码返回一个日期:01/22/2009 04:35:00 pm:

echo date("m/d/Y h:i:s a", time());

设置时区:

date_default_timezone_set('Asia/Calcutta');

然后调用日期函数

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

如果你是孟加拉国人,如果你想知道达卡的时间,那么用这个:

$date = new DateTime();
$date->setTimeZone(new DateTimeZone("Asia/Dhaka"));
$get_datetime = $date->format('d.m.Y H:i:s');

获取当前时间和日期的最佳方法是使用PHP中的date函数:

$date = date('FORMAT'); // FORMAT E.g.: Y-m-d H:i:s

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

使用Unix时间戳:

$now_date = date('FORMAT', time()); // FORMAT Eg : Y-m-d H:i:s

设置服务器时区。

date_default_timezone_set('Asia/Calcutta');

这里有一个不同的时区列表。

如果您想要不同的时间刻度,请使用:

$tomorrow  = mktime(0, 0, 0, date("m")  , date("d")+1, date("Y"));
$lastmonth = mktime(0, 0, 0, date("m")-1, date("d"),   date("Y"));
$nextyear  = mktime(0, 0, 0, date("m"),   date("d"),   date("Y")+1);

date_default_timezone_set("Asia/Calcutta");
echo date("Y/m/d H:i:s");