真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

PHP中日期和時間函數(shù)簡介

PHP中日期和時間相關(guān)函數(shù)簡介

為曲江等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務(wù),及曲江網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都網(wǎng)站設(shè)計、成都做網(wǎng)站、曲江網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!

一、UNIX時間戳

在當前大多數(shù)的UNIX系統(tǒng)中,保存當前日期和時間的方法是:保存格林尼治標準時間從1970年1月1日零點起到當前時刻的秒數(shù),以32為整列表示。1970年1月1日零點也稱為UNIX紀元。在Windows系統(tǒng)下也可以使用UNIX時間戳,簡稱時間戳,但如果時間在1970年以前或2038年以后,處理的時候可能會出現(xiàn)問題。

PHP在處理有些數(shù)據(jù),特別是對數(shù)據(jù)庫中時間類型的數(shù)據(jù)進行格式化時,經(jīng)常需要先將時間類型的數(shù)據(jù)轉(zhuǎn)化為UNIX時間戳再進行處理,另外,不同的數(shù)據(jù)庫系統(tǒng)對時間類型的數(shù)據(jù)不能兼容轉(zhuǎn)換,這時就需要將時間轉(zhuǎn)化為UNIX時間戳,再對時間戳進行操作,這樣就實現(xiàn)了不同數(shù)據(jù)庫系統(tǒng)的跨平臺性。

二、時間轉(zhuǎn)化為時間戳

將用字符串表達的日期和時間轉(zhuǎn)化為時間戳的形式,可以使用strtotime()函數(shù)。

int strtotime(string $time[,int $now])

$time是包含英語日期格式的字符串,$time值如果有毫秒數(shù)將被忽略。其值相對于$now參數(shù)給出的時間,如果沒有給出則默認使用系統(tǒng)當前時間。

如果給定的年份是兩位數(shù)字的形式,則年份值0~69表示2000~2069,70~100表示1970~2000.

另一個取得日期的UNIX時間戳的函數(shù)是mktime()函數(shù),語法如下:

int mktime([int,$hour[,int $minute[,int $second[,$int $month[,int $day[,int $year]]]]]])

如果所有參數(shù)都為空,則默認為當前時間。

三、獲取日期和時間

1.date()函數(shù)

date()函數(shù)的作用是將時間戳按照給定的格式轉(zhuǎn)化為具體的日期和時間字符串。

string date(string $format[,int $timestamp])

說明:$format指定了轉(zhuǎn)化后的日期和時間的格式,$timestamp是需要轉(zhuǎn)化的時間戳,如果省略則使用本地當前時間,即默認值為time()函數(shù)的值。time()函數(shù)返回當前時間的時間戳。

date()函數(shù)指出的格式代碼

字符說明返回值例子
d月份中的第幾天01~31
D星期中的第幾天Mon到Sun
j月份中的第幾天,沒有前導零1~31
I星期幾,完整的文本格式Sunday~Saturday
NISO-8601格式數(shù)字表示的星期中的第幾天1(星期一)~7(星期天)
S每月天數(shù)后面的英文后綴,用2個字符表示st、nd、rd或th,可以和j一起用
w星期中的第幾天,數(shù)字表示0(星期天)~6(星期六)
z年份中的第幾天0~366
WISO-8601格式年份中的第幾周,每周從星期一開始例如:42(當年第42周)

F月份,完整的文本格式,如January或MarchJanuary~December
m數(shù)字表示的月份,有前導零01~12
M三個字母縮寫表示的月份Jan~Dec
n數(shù)字表示的月份,沒有前導零1~12
t給定月份所應(yīng)有的天數(shù)28~31
L是否為閏年如果是閏年為1,否則為0
oISO-8601格式年份數(shù)字。這和Y的值相同,只是如果ISO的星期數(shù)(W)屬于前一年或下一年,則用那一年例如:1999或2003
Y4為數(shù)字完整表示的年份例如:1999或2003
y2位數(shù)字表示的年份例如:99和93
a小寫的上午和下午值

am和pm

A大寫的上午和下午值AM和PM
BSwatch Internet標準時000-999
g小時,12小時格式,沒有前導零1~12
G小時,24小時格式,沒有前導零0~24
h小時,12小時格式,有前導零01~12
H小時,24小時格式,有前導零00~23
i有前導零的分鐘數(shù)00~59
s秒數(shù),有前導零00~59
e時區(qū)標志例如:UTC、GMT
I是否為夏令時如果是夏令時為1,否則為0

O與格林尼治時間相差的小時數(shù)例如:+0200
P與格林尼治時間(GMT)的差別,小時和分鐘之間用冒號分割例如:+02:00
T本機所在的時區(qū)例如:EST、MDT
Z時區(qū)偏移量的秒數(shù)。UTC西邊的時區(qū)偏移量總是負的,UTC東區(qū)的時區(qū)偏移量總是正的-43200~43200
cISO8601格式的日期2004-02-12T15:19:21+00:00
rRFC822格式的日期Thu,21,Dec2000 16:01:07 +0200
U從UNIX紀元開始至今的秒數(shù)time()函數(shù)









2.getdate()函數(shù)

使用getdate()函數(shù)也可以獲取日期和時間信息。

array getdate([int ,$timestamp])

說明:$timestamp是要轉(zhuǎn)化的時間戳,如果不給出則使用當前時間。函數(shù)根據(jù)$timestamp返回一個包含日期和時間信息的數(shù)組。

getdate()函數(shù)返回的數(shù)組中的鍵名和值

鍵名說明舉例
seconds秒的數(shù)字表示0~59
minutes分鐘的數(shù)字表示0~59
hours小時的數(shù)字表示0~23
mday月份中第幾天的數(shù)字表示1~31
wday星期中第幾天的數(shù)字表示0(表示星期天)~6(表示星期六)
mon月份的數(shù)字表示1~12
year4位數(shù)字表示的完整年份例如:1993或2003
yday一年中第幾天的數(shù)字表示0~365
weekday星期幾的完整文本表示Sunday~Saturday

month月份的完整文本表示January~December
0自UNIX紀元開始至今的秒數(shù)系統(tǒng)相關(guān),典型值從-2147483648~2147483647

四、其他日期和時間函數(shù)

1.日期和時間的計算

由于時間戳是32位整型數(shù)據(jù),所以通過對時間戳進行加減法運算可計算兩個時間的差值。

2.檢查日期

checkdate()函數(shù)可以用于檢查一個日期數(shù)據(jù)是否有效,語法如下:

bool checkdate(int $month,int $day,int $year)

說明:$year的值是從1到32767,$month的值從1到12,$day的值在給定的$month值所具有的天數(shù)范圍內(nèi),其中閏年的情況也考慮在內(nèi)。當給定的日期是有效的日期時,函數(shù)返回TRUE,否則返回FALSE,

3.設(shè)置時區(qū)

系統(tǒng)默認的是格林尼治標準時間,所以顯示當前時間可能與本地時間會有差別,PHP中提供了可以修改時區(qū)的函數(shù)date_default_timezone_set().

bool date_default_timezone_set(string $timezone_identifier)

參數(shù)$timezone_identifier為要指定的時區(qū),中國大陸可用的值是Asia/Chongqing,Asia/Shanghai,Asia/Urumqi。北京時間可以使用PRC。

另外,還可以通過修改PHP配置文件的方法修改默認時區(qū):打開php.ini,找到date_timezone選項,將選項前面的分號“;”去掉,將選項的值設(shè)為要設(shè)置的默認時區(qū)的時區(qū)標志符。保存后重啟Apache,系統(tǒng)默認的時區(qū)就設(shè)置完了。



當前文章:PHP中日期和時間函數(shù)簡介
本文URL:http://weahome.cn/article/iioohh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部