PHP格式化显示时间date()函数代码

PHP Date/Time 简介

Date/Time 函数允许您从 PHP 脚本运行的服务器上获取日期和时间。您可以使用 Date/Time 函数通过不同的方式来格式化日期和时间。

注释:这些函数依赖于服务器的本地设置。使用这些函数时请记住要考虑夏令时和闰年。

安装

PHP Date/Time 函数是 PHP 核心的组成部分。无需安装即可使用这些函数。

Runtime 配置

Date/Time 函数的行为受到 php.ini 中设置的影响:

名称 描述 默认 PHP 版本
date.timezone 默认时区(所有的 Date/Time 函数使用该选项) "" PHP 5.1
date.default_latitude 默认纬度(date_sunrise() 和 date_sunset() 使用该选项) "31.7667" PHP 5.0
date.default_longitude 默认经度(date_sunrise() 和 date_sunset() 使用该选项) "35.2333" PHP 5.0
date.sunrise_zenith 默认日出天顶(date_sunrise() 和 date_sunset() 使用该选项) "90.83" PHP 5.0
date.sunset_zenith 默认日落天顶(date_sunrise() 和 date_sunset() 使用该选项) "90.83" PHP 5.0

定义和用法

date() 函数格式化本地日期和时间,并返回格式化的日期字符串。

语法

date(format,timestamp);
返回将整数 timestamp 按照给定的格式字串而产生的字符串。如果没有给出时间戳则使用本地当前时间。换句话说,timestamp 是可选的,默认值为 time()。

参数 描述
format 必需。规定输出日期字符串的格式。可使用下列字符:

  • d - 一个月中的第几天(从 01 到 31)
  • D - 星期几的文本表示(用三个字母表示)
  • j - 一个月中的第几天,不带前导零(1 到 31)
  • l('L' 的小写形式)- 星期几的完整的文本表示
  • N - 星期几的 ISO-8601 数字格式表示(1 表示 Monday[星期一],7 表示 Sunday[星期日])
  • S - 一个月中的第几天的英语序数后缀(2 个字符:st、nd、rd 或 th。与 j 搭配使用)
  • w - 星期几的数字表示(0 表示 Sunday[星期日],6 表示 Saturday[星期六])
  • z - 一年中的第几天(从 0 到 365)
  • W - 用 ISO-8601 数字格式表示一年中的星期数字(每周从 Monday[星期一]开始)
  • F - 月份的完整的文本表示(January[一月份] 到 December[十二月份])
  • m - 月份的数字表示(从 01 到 12)
  • M - 月份的短文本表示(用三个字母表示)
  • n - 月份的数字表示,不带前导零(1 到 12)
  • t - 给定月份中包含的天数
  • L - 是否是闰年(如果是闰年则为 1,否则为 0)
  • o - ISO-8601 标准下的年份数字
  • Y - 年份的四位数表示
  • y - 年份的两位数表示
  • a - 小写形式表示:am 或 pm
  • A - 大写形式表示:AM 或 PM
  • B - Swatch Internet Time(000 到 999)
  • g - 12 小时制,不带前导零(1 到 12)
  • G - 24 小时制,不带前导零(0 到 23)
  • h - 12 小时制,带前导零(01 到 12)
  • H - 24 小时制,带前导零(00 到 23)
  • i - 分,带前导零(00 到 59)
  • s - 秒,带前导零(00 到 59)
  • u - 微秒(PHP 5.2.2 中新增的)
  • e - 时区标识符(例如:UTC、GMT、Atlantic/Azores)
  • I(i 的大写形式)- 日期是否是在夏令时(如果是夏令时则为 1,否则为 0)
  • O - 格林威治时间(GMT)的差值,单位是小时(实例:+0100)
  • P - 格林威治时间(GMT)的差值,单位是 hours:minutes(PHP 5.1.3 中新增的)
  • T - 时区的简写(实例:EST、MDT)
  • Z - 以秒为单位的时区偏移量。UTC 以西时区的偏移量为负数(-43200 到 50400)
  • c - ISO-8601 标准的日期(例如 2013-05-05T16:34:42+00:00)
  • r - RFC 2822 格式的日期(例如 Fri, 12 Apr 2013 12:01:05 +0200)
  • U - 自 Unix 纪元(January 1 1970 00:00:00 GMT)以来经过的秒数

同时,也可使用下列预定义常量(从 PHP 5.1.0 开始可用):

  • DATE_ATOM - Atom(例如:2013-04-12T15:52:01+00:00)
  • DATE_COOKIE - HTTP Cookies(例如:Friday, 12-Apr-13 15:52:01 UTC)
  • DATE_ISO8601 - ISO-8601(例如:2013-04-12T15:52:01+0000)
  • DATE_RFC822 - RFC 822(例如:Fri, 12 Apr 13 15:52:01 +0000)
  • DATE_RFC850 - RFC 850(例如:Friday, 12-Apr-13 15:52:01 UTC)
  • DATE_RFC1036 - RFC 1036(例如:Fri, 12 Apr 13 15:52:01 +0000)
  • DATE_RFC1123 - RFC 1123(例如:Fri, 12 Apr 2013 15:52:01 +0000)
  • DATE_RFC2822 - RFC 2822(Fri, 12 Apr 2013 15:52:01 +0000)
  • DATE_RFC3339 - 与 DATE_ATOM 相同(从 PHP 5.1.3 开始)
  • DATE_RSS - RSS(Fri, 12 Aug 2013 15:52:01 +0000)
  • DATE_W3C - 万维网联盟(例如:2013-04-12T15:52:01+00:00)
timestamp 可选。规定一个整数的 Unix 时间戳。默认是当前的本地时间(time())。

技术细节

返回值: 如果成功则返回格式化的日期字符串,如果失败则报 E_WARNING 错并返回 FALSE。
PHP 版本: 4+
更新日志: PHP 5.1.0:新增 E_STRICT 和 E_NOTICE 时区错误。有效范围的时间戳是从 1901 年 12 月 13 日 20:45:54 GMT 星期五 到 2038 年 1 月 19 日 03:14:07 GMT 星期二。5.1.0 之前的版本,在某些系统上(例如 Windows)时间戳被限制在从 01-01-1970 到 19-01-2038。
PHP 5.1.1:新增标准日期/时间格式常量,用于指定 format 参数。

常用的几个参数

Y 4位数字年,y为2位数字,如99即1999年
m 数字月份,前面有前导0,如01。n 为无前导0数字月份
F 月份,完整的文本格式,例如 January 或者 March
M 三个字母缩写表示的月份,例如 Jan 或者 Mar
d 月份中的第几天,前面有前导0,如03。j 为无前导0的天数
w 星期中的第几天,以数字表示,0表示星期天
z 年份中的第几天,范围0-366
W 年份中的第几周,如第32周
H 24小时格式,有前导0,h为12小时格式
G 24小时格式,无前导0,g为对应12小时格式
i 分钟格式,有前导0
s 秒格式,有前导0
A 大写上下午,如AM,a为小写

实例代码一

echo date("Y-m-d",time());
echo "<br>";
echo date("Y.m.d",time());
echo "<br>";
echo date("M d Y",time());
echo "<br>";
echo date("Y-m-d H:i",time());

OK!

实例代码二

格式化本地日期和时间,并返回格式化的日期字符串:

<?php
// 设置时区
date_default_timezone_set("PRC");

// 打印当前时间 PHP_EOL 换行符,兼容不同系统
echo date("Y-m-d H:i:s") . PHP_EOL;
echo date("Y 年 m 月 d 日 H 点 i 分 s 秒") . PHP_EOL;
// 指定时间
$time = strtotime("2018-01-18 08:08:08"); // 将指定日期转成时间戳
echo date("Y-m-d H:i:s", $time) . PHP_EOL;
?>

输出如下所示:

2018-10-3 15:49:36
2018 年 10 月 03 日 15 点 49 分 36 秒
2018-10-3 15:49:36

代码三、通过date函数格式化时间戳

echo date('Y-m-d h:i:s', time()); // 2016-12-31 05:07:05

这篇文章就介绍到这了,我们小编根据多篇文章整合,希望能帮助到大家。

(0)

相关推荐

  • PHP日期函数date格式化UNIX时间的方法

    本文实例讲述了PHP日期函数date格式化UNIX时间的方法.分享给大家供大家参考.具体分析如下: 日期函数可以根据指定的格式将一个unix时间格式化成想要的文本输出 使用到函数语法如下 string date (string $Format); string date (string $Format, int $Time); 下面是演示代码 <?php echo "When this page was loaded,\n"; echo 'It was then ', date

  • php格式化时间戳

    CMS中一般显示时间比较新的文章需要显示几分钟前,几天前这样,但是一般数据库里面记录的都是时间戳(至少我习惯这样),所以就需要一个转化的过程,根据网上的资料加上自己的修改整理封装了两段代码 下面是封装好的方法 function formatTime($time) { $time = (int) substr($time, 0, 10); $int = time() - $time; $str = ''; if ($int <= 2){ $str = sprintf('刚刚', $int); }e

  • PHP常用函数之格式化时间操作示例

    本文实例讲述了PHP常用函数之格式化时间操作.分享给大家供大家参考,具体如下: /** * 格式化时间 * @param $time 时间戳 * @return bool|string */ function formatTimeToNow($time){ //获取现在的时间戳 $nowtime = time(); if($time>$nowtime){ return ''; }else{ $tc = $nowtime-$time; if( $tc >= 864000 ){ $str = da

  • PHP获取当前日期和时间及格式化方法参数

    使用函式 date() 实现 复制代码 代码如下: <?php echo $showtime=date("Y-m-d H:i:s");?> 显示的格式: 年-月-日 小时:分钟:秒 相关时间参数: a - "am" 或是 "pm" A - "AM" 或是 "PM" d - 几日,二位数字,若不足二位则前面补零; 如: "01" 至 "31" D - 星期几

  • PHP使用gmdate实现将一个UNIX 时间格式化成GMT文本的方法

    本文实例讲述了PHP使用gmdate实现将一个UNIX 时间格式化成GMT文本的方法.分享给大家供大家参考.具体分析如下: 语法如下: string gmdate (string $Format) string gmdate (string $Format, int $Time) 演示代码 <?php echo "When this page was loaded,\n"; echo 'It was then ', gmdate ('r'), "\n"; ec

  • PHP+Mysql日期时间如何转换(UNIX时间戳和格式化日期)

    写过PHP+MySQL的程序员都知道有时间差,UNIX时间戳和格式化日期是我们常打交道的两个时间表示形式,Unix时间戳存储.处理方便,但是不直观,格式化日期直观,但是处理起来不如Unix时间戳那么自如,所以有的时候需要互相转换,下面给出互相转换的几种转换方式. 一.在MySQL中完成 这种方式在MySQL查询语句中转换,优点是不占用PHP解析器的解析时间,速度快,缺点是只能用在数据库查询中,有局限性. 1. UNIX时间戳转换为日期用函数: FROM_UNIXTIME() 一般形式:selec

  • php时间戳格式化显示友好的时间函数分享

    在项目中时间一律显示为2014-10-20 10:22显得很呆板.在微博.QQ空间等网站通常会显示为几秒前,几分钟前,几小时前等容易阅读的时间,我们称之为友好的时间格式.那么用php怎么实现呢? 大体思路如下: 如果是跨年并且大于3天就显示为具体的时间 如果是今天的           如果是一分钟内则显示几秒之前           如果是一小时内则显示几分钟前           如果是当天且大于一小时则显示为几小时前 如果是昨天则显示为昨天几点 如果是前天则显示为前天几点 如果大于三天(没

  • php格式化时间戳显示友好的时间实现思路及代码

    在项目中时间一律显示为2014-10-20 10:22显得很呆板.在微博.QQ空间等网站通常会显示为几秒前,几分钟前,几小时前等容易阅读的时间,我们称之为友好的时间格式.那么用php怎么实现呢? 大体思路如下: 如果是跨年并且大于3天就显示为具体的时间 如果是今天的 如果是一分钟内则显示几秒之前 如果是一小时内则显示几分钟前 如果是当天且大于一小时则显示为几小时前 如果是昨天则显示为昨天几点 如果是前天则显示为前天几点 如果大于三天(没有跨年)则显示为几月几号 根据以上思路就不难写出实现代码了:

  • php Smarty date_format [格式化时间日期]

    Example 5-8. date_format[日期格式] index.php: 复制代码 代码如下: $smarty = new Smarty; $smarty->assign('yesterday', strtotime('-1 day')); $smarty->display('index.tpl'); index.tpl: {$smarty.now|date_format} {$smarty.now|date_format:"%A, %B %e, %Y"} {$s

  • php格式化日期和时间格式化示例分享

    复制代码 代码如下: // 格式化日期 static function formatDate($format, $datetime, $week = 0) {     $datetime = $datetime > 3000 ? $datetime : strtotime($datetime);     if ($week) {         $weeknames = [             '日',             '一',             '二',           

  • php自定义的格式化时间示例代码

    如:时间刚好是5分钟前,则对应的时间戳就会被格式化为5分钟前,不多说了,直接贴上代码: 复制代码 代码如下: /** * 格式化时间 * @param integer $timestamp 时间戳 * @param string $format dt=日期时间 d=日期 t=时间 u=个性化 其他=自定义 * @param integer $timeoffset 时区值 * @param string $custom_format 自定义时间格式 * @return string */ publ

随机推荐