首页 >后端开发 >PHP问题 >php怎么将时间戳转换时间格式?

php怎么将时间戳转换时间格式?

青灯夜游
青灯夜游原创
2020-11-05 10:26:232885浏览

在php中,可以使用date()函数来将时间戳转换时间格式,该函数可以将时间戳格式化为可读性更好的日期和时间,语法格式“date("时间戳的输出格式",时间戳)”,例如“date("Y-m-d H:i:s",时间戳)”。

php怎么将时间戳转换时间格式?

推荐:《PHP视频教程

当时间和日期保存在计算机中的时候,可以使用 UNIX 时间戳作为标准格式。但是 UNIX 时间戳的可读性很差,所以有时我们需要把 UNIX 时间戳格式化为可读性更好的时间和日期,或者格式化为其它软件需要的格式。

在 PHP 中可以使用 date() 函数可把时间戳格式化为可读性更好的日期和时间。

该函数的语法格式如下:

date($format [,$timestamp])

参数:

  • format 必需。规定时间戳的格式。

  • timestamp 可选。规定时间戳。默认是当前的日期和时间。

参数 $format 格式化字符串中可以识别的特殊字符如下表所示:

format 字符 说明 返回值例子
--- ---
d 月份中的第几天,使用两位的数字表示,不足两位时在前面补 0 01 到 31
D 星期几的英文缩写(使用 3 个字母表示) Mon 到 Sun
j 月份中的第几天,没有前导零 131
l(“L”的小写字母) 星期几的英文单词 Sunday 到 Saturday
N 根据 ISO-8601 标准格式,使用数字表示星期中的第几天(PHP5.1.0 新加) 1(表示星期一)到 7(表示星期天)
S 每月天数后面的英文后缀(使用 2 个字符表示) st、nd、rd 或者 th。可以和 j 一起使用
w 使用数字表示星期中的第几天 0(表示星期天)到 6(表示星期六)
z 使用数字表示一年中的第几天 0 到 365
星期 --- ---
W 根据 ISO-8601 标准格式,使用数字表示年份中的第几周,每周从星期一开始,(PHP 4.1.0 新增) 例如:42(当年的第 42 周)
--- ---
F 月份的英文单词,例如 January 或者 June January 到 December
m 使用两位的数字表示当前月份 01 到 12
M 月份的英文缩写 Jan 到 Dec
n 使用数字表示当前月份 1 到 12
t 指定月份的天数 28 到 31
--- ---
L 指定的年份是否为闰年 如果是闰年值为 1,否则为 0
o 根据 ISO-8601 标准格式使用数字表示年份,这和 Y 的作用相同(PHP 5.1.0 新增) 1999 or 2019
Y 使用 4 位数字表示完整的年份 例如:1999 或 2019
y 使用 2 位数字表示年份 例如:99 或 03
时间 --- ---
a 小写的上午和下午值 am 或 pm
A 大写的上午和下午值 AM 或 PM
B Swatch Internet 标准时 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 新增)。需要注意的是 date() 函数总是返回 000000,因为它只接受 integer 参数,而 DateTime::format() 才支持毫秒 例如:654321
时区 --- ---
e 时区标识 例如:UTC、GMT、Atlantic/Azores
I(大写的“i”) 是否为夏令时 夏令时为 1,否则为 0
O 与格林尼治时间相差的小时数 例如:+0200
P 与格林尼治时间(GMT)的差别,小时和分钟之间由冒号分隔 例如:+02:00
T 本机所在的时区 例如:EST、MDT(在 windows 下为完整文本格式,例如“Eastern Standard Time”,中文版会显示“中国标准时间”)
Z 时差偏移量的秒数,UTC 西边的时区偏移量总是负的,UTC 东边的的时区偏移量总是正的 -43200 到 43200
完整的日期/时间 --- ---
c ISO-8601 格式的日期 2014-02-12T15:19:21+00:00
r RFC 822 格式的日期 例如:Thu,21 Dec 2000 16:01:07 +0200
U 从 UNIX 纪元(January 1 1970 00:00:00 GMT)开始至今的秒数 和 time() 返回相同的时间戳

提示:特殊字符中不能被识别的字符将原样显示,Z 字符在使用 gmdate() 函数时总是返回 0。

示例1:

<?php
echo date("Y-m-d H:i:s","1256112010")."<br>";
echo date(&#39;l dS \\\\\\\\\\\\\\\\of F Y h:i:s A&#39;,"1220976000")."<br>";
echo date("Y/m/d H:i:s","1604629565")."<br>";
echo date("Y.m.d H:i:s","1604545871");
?>

输出:

2009-10-21 16:00:10
Wednesday 10th of September 2008 12:00:00 AM
2020/11/06 10:26:05
2020.11.05 11:11:11

示例2:

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);
// 设定要用的时区
date_default_timezone_set(&#39;PRC&#39;);
// 输出类似Monday
echo date("l");
echo "<br/>";
// 输出类似Monday 15th of August 2005 03:12:46 PM
echo date(&#39;l dS \\\\\\\\\\\\\\\\of F Y h:i:s A&#39;);
echo "<br/>";
// 输出July 1, 2000 is on a Saturday
echo "July 1, 2000 is on a " . date("l");
echo "<br/>";
/* 在格式参数中使用常量 */
// 输出类似Wed, 25 Sep 2013 15:28:57 -0700
echo date(DATE_RFC2822);
echo "<br/>";
// 输出类似2000-07-01T00:00:00+00:00
echo date(DATE_ATOM);
echo "<br/>";
//输出类似2000-07-01 14:00:00
echo date(&#39;Y-m-d H:i:s&#39;).&#39;<br>&#39;;
$time = time();
echo &#39;是一周中的第 &#39;.date(&#39;w&#39;, $time).&#39; 天<br>&#39;;
echo &#39;今年是:&#39;;
date(&#39;L&#39;, $time)? print(&#39;闰年&#39;):print(&#39;平年&#39;);
?>

输出:

Thursday
Thursday 05th of November 2020 10:32:44 AM
July 1, 2000 is on a Thursday
Thu, 05 Nov 2020 10:32:44 +0800
2020-11-05T10:32:44+08:00
2020-11-05 10:32:44
是一周中的第 4 天
今年是:闰年

更多编程相关知识,请访问:编程教学!!

以上是php怎么将时间戳转换时间格式?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn