首頁 > 後端開發 > PHP問題 > php怎麼將時間戳轉換時間格式?

php怎麼將時間戳轉換時間格式?

青灯夜游
發布: 2023-03-07 10:30:01
原創
2897 人瀏覽過

在php中,可以使用date()函數來將時間戳記轉換時間格式,該函數可以將時間戳格式化為可讀性更好的日期和時間,語法格式「date("時間戳的輸出格式",時間戳)”,例如“date("Y-m-d H:i:s",時間戳)”。

php怎麼將時間戳轉換時間格式?

推薦:《PHP影片教學

當時間和日期儲存在電腦中的時候,可以使用UNIX 時間戳記作為標準格式。但是 UNIX 時間戳記的可讀性很差,所以有時我們需要把 UNIX 時間戳格式化為可讀性更好的時間和日期,或者格式化為其它軟體所需的格式。

在 PHP 中可以使用 date() 函數可將時間戳格式化為可讀性較好的日期和時間。

此函數的語法格式如下:

date($format [,$timestamp])
登入後複製

參數:

  • format 必要。規定時間戳記的格式。

  • timestamp 可選。規定時間戳。預設是當前的日期和時間。

參數 $format 格式化字串中可以辨識的特殊字元如下表所示:

##dD#j1l(「L」的小寫字母)#NS------#W依ISO-8601 標準格式,使用數字表示年份中的第幾週,每週從星期一開始,(PHP 4.1.0 新增)例如:42(當年的第42 週)------#F月份的英文單詞,例如January 或JuneJanuary 到December#m使用兩位的數字表示當前月份#01 到12M月份的英文縮寫#Jan 到Dec##nt年##L#---指定的年份是否為閏年##o依據ISO-8601 標準格式使用數字表示年份,這和Y 的作用相同(PHP 5.1.0 新增)#1999 or 2019Y使用4位數字表示完整的年份例如:1999 或2019#y使用2 位數字表示年份例如: 99 或03---##---am 或pmAM 或PM000 到9991 到120 到23######
format 字元說明傳回值範例
##------
##月份中的第幾天,使用兩位數的數字表示,不到兩位時在前面補001 到31
星期幾的英文縮寫(使用3 個字母表示)Mon 到Sun
月份中的第幾天,沒有前導零31
星期幾的英文單字Sunday 到Saturday
根據ISO-8601 標準格式,使用數字表示星期中的第幾天(PHP5.1.0 新加)1(表示星期一)到7(表示星期日)
每月天數後面的英文字尾(使用2 個字元表示)st、nd、rd 或th。可以和j 一起使用
w使用數字表示星期中的第幾天0(表示星期日)到6(表示星期六)
z使用數字表示一年中的第幾天0 到365
##星期
使用數字表示目前月份1 到12
指定月份的天數28 到31
------
##L
如果是閏年值為1,否則為0
時間
a小寫的上午和下午值
#A大寫的上午和下午值
BSwatch Internet 標準時
g使用12 小時格式表示小時數
#G使用24 小時格式表示小時數
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
完整的日期/时间------
cISO-8601 格式的日期2014-02-12T15:19:21+00:00
rRFC 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中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板