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


当前回答

通常,date的这个函数对每个人都有用:date("Y/m/d");

但是时间是不同的,因为时间函数取决于PHP版本或系统日期。

所以可以像这样使用它来获得我们自己的时区:

$date = new DateTime('now', new DateTimeZone('Asia/Kolkata'));
echo $date->format('H:m:s');

这个函数显示24小时时间。

其他回答

Linux服务器时间与PHP time()时区差异如下:

<?php
    putenv("TZ=Asia/Kabul");
    $t = time();
    echo date('d/m/Y H:i:sa', $t);
?>

PHP以秒为单位返回当前时间。你需要把它们格式化成你想要的任何格式。

<?php
    // time() returns current time in seconds
    $in_seconds = time();

    // strftime - Format a local time/date according to locale settings
    echo strftime("%m/%d/%y", $in_seconds);
?>

参考:http://php.net/manual/en/function.strftime.php

您可以使用$_SERVER['REQUEST_TIME']变量(自PHP 5.1.0起可用)或time()函数来获取当前的Unix时间戳。

根据如何使用PHP获取当前日期时间(NOW)这篇文章,有两种常见的方法来获取当前日期。要在PHP中获取当前的日期时间(now),您可以在任何PHP版本中使用date类,或者在PHP >= 5.2中使用datetime类。

这里有各种日期格式表达式。

使用日期的示例

该表达式将以Y-m-d H:i:s格式返回NOW。

<?php
    echo date('Y-m-d H:i:s');
?>

使用datetime类的示例

该表达式将以Y-m-d H:i:s格式返回NOW。

<?php
    $dt = new DateTime();
    echo $dt->format('Y-m-d H:i:s');
?>

下面是一些常用的表示时间的字符:

H -以前导零表示的12小时格式(01到12) i -前导0的分钟(00到59) s -前导0的秒(00到59) a -小写的子午线前后(am或pm)

确定你的时区

<?php
    date_default_timezone_set("America/New_York");
    echo "The time is " . date("h:i:sa");
?>

看看这个(可选)

<?php
    $d = mktime(11, 14, 54, 8, 12, 2014);
    echo "Created date is " . date("Y-m-d h:i:sa", $d);
?>

为日期

<?php
    echo "Today is " . date("Y/m/d") . ;
    echo "Today is " . date("Y.m.d") . ;
    echo "Today is " . date("Y-m-d") . ;
    echo "Today is " . date("l");
?>

下面是一些常用来表示日期的字符:

d -表示一个月中的第一天(01 ~ 31) m -代表一个月(01 ~ 12) Y -年份(四位数) l(小写“l”)-代表星期几

Source-W3-Schools