哪个PHP函数可以返回当前日期/时间?
当前回答
获取当前时间和日期的最佳方法是使用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');
这里有一个不同的时区列表。
其他回答
$date = new DateTime('now', new DateTimeZone('Asia/Kolkata'));
echo $date->format('d-m-Y H:i:s');
更新
//Also get am/pm in datetime:
echo $date->format('d-m-Y H:i:s a'); // output 30-12-2013 10:16:15 am
对于日期格式,PHP date() Function很有用。
非常简单的
date_default_timezone_set('Asia/Kolkata');
$date = date('m/d/Y H:i:s', time());
时间会随着服务器时间流逝。一个简单的解决方法是在调用date()或time()函数之前使用date_default_timezone_set手动设置时区。
我在澳大利亚墨尔本,所以我有这样的东西:
date_default_timezone_set('Australia/Melbourne');
或者另一个例子是洛杉矶-美国:
date_default_timezone_set('America/Los_Angeles');
你还可以通过以下命令查看服务器当前所在的时区:
date_default_timezone_get();
比如:
$timezone = date_default_timezone_get();
echo "The current server timezone is: " . $timezone;
所以你问题的简短答案是:
// Change the line below to your timezone!
date_default_timezone_set('Australia/Melbourne');
$date = date('m/d/Y h:i:s a', time());
那么所有的时间都将是你刚刚设置的时区:)
你可以使用$_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());
// Simply:
$date = date('Y-m-d H:i:s');
// Or:
$date = date('Y/m/d H:i:s');
// This would return the date in the following formats respectively:
$date = '2012-03-06 17:33:07';
// Or
$date = '2012/03/06 17:33:07';
/**
* This time is based on the default server time zone.
* If you want the date in a different time zone,
* say if you come from Nairobi, Kenya like I do, you can set
* the time zone to Nairobi as shown below.
*/
date_default_timezone_set('Africa/Nairobi');
// Then call the date functions
$date = date('Y-m-d H:i:s');
// Or
$date = date('Y/m/d H:i:s');
// date_default_timezone_set() function is however
// supported by PHP version 5.1.0 or above.
有关时区参考,请参见支持的时区列表。
推荐文章
- 解析日期字符串并更改格式
- 原则-如何打印出真正的sql,而不仅仅是准备好的语句?
- 如何从关联PHP数组中获得第一项?
- PHP/MySQL插入一行然后获取id
- 我如何排序一个多维数组在PHP
- 如何在PHP中截断字符串最接近于一定数量的字符?
- PHP错误:“zip扩展名和unzip命令都没有,跳过。”
- Nginx提供下载。php文件,而不是执行它们
- Json_encode()转义正斜杠
- 在Java中转换字符串到日历对象
- 如何在PHP中捕获cURL错误
- ZoneOffset之间的区别是什么。UTC和ZoneId.of(“UTC”)?
- 如何要求一个分叉与作曲家?
- 如何检查DST(日光节约时间)是否有效,如果是,偏移量?
- 如何在php中创建可选参数?