您的位置:首页 > 编程语言 > PHP开发

PHP 中获取当前时间[Datetime Now]

2016-03-24 00:01 597 查看
在 PHP 中可以通过
date()
获取当前时间,在>5.2的版本中最好还是用
datetime
类型

date()

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

DateTime

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

更完善的方法

上面两个例子返回的当前时间都是服务器时区时间(timezone 可在php.ini中声明)

Above examples will return NOW using your server timezone, as it is defined in php.ini, for example:

[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone date.timezone = Europe/Athens

最准确的方法是以UTC时间,所以

/* server timezone */
define('CONST_SERVER_TIMEZONE', 'UTC');

/* server dateformat */
define('CONST_SERVER_DATEFORMAT', 'YmdHis');

<?php
/**
* Converts current time for given timezone (considering DST)
*  to 14-digit UTC timestamp (YYYYMMDDHHMMSS)
*
* DateTime requires PHP >= 5.2
*
* @param $str_user_timezone
* @param string $str_server_timezone
* @param string $str_server_dateformat
* @return string
*/
function now($str_user_timezone,
$str_server_timezone = CONST_SERVER_TIMEZONE,
$str_server_dateformat = CONST_SERVER_DATEFORMAT) {

// set timezone to user timezone
date_default_timezone_set($str_user_timezone);

$date = new DateTime('now');
$date->setTimezone(new DateTimeZone($str_server_timezone));
$str_server_now = $date->format($str_server_dateformat);

// return timezone to server default
date_default_timezone_set($str_server_timezone);

return $str_server_now;
}
?>

原文 : http://www.pontikis.net/tip/?id=18
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: