php關於時間的學習_PHP教程

來源:互聯網
上載者:User
關於時間的函數:

strftime 根據地區設定格式化本地時間/日期

strptime — 解析由strftime() 產生的日期/時間

setlocale 函數設定地區資訊(地區資訊)

date_default_timezone_set 如果發覺date函數得出的小時數與實際相差8小時,請加上date_default_timezone_set('Etc/GMT-8');

date — 格式化一個本地時間/日期

gmdate 同date完全一樣— 格式化一個GMT/UTC 日期/時間

mktime — 取得一個日期的Unix 時間戳記 mktime(0, 0, 0, 12, 30, 1997)

gmmktime和mktime 完全一樣

strtotime — 將任何英文文本的日期時間描述解析為Unix 時間戳記

time — 返回當前的Unix 時間戳記

microtime — 返回當前Unix 時間戳記和微秒數

getlastmod — 取得目前使用中網頁最後一次更新網頁內容的時間

注意:TimeStamp不是函數是指Unix 時間戳記即由1970年01月01日0時0分0秒到此刻的秒數

實際操作案例

$strtime = "2000-02-12 16:20:35";

$array = explode("-",$strtime);

$year = $array[0];

$month = $array[1];

var_dump($array);

$array = explode(":",$array[2]);

$minute = $array[1];

$second = $array[2];

var_dump($array);

$array = explode(" ",$array[0]);

$day = $array[0];

$hour = $array[1];

$timestamp = mktime($hour,$minute,$second,$month,$day,$year);

echo "字串時間:$strtime
";

echo "年:$year
";

echo "月:$month
";

echo "日:$day
";

echo "時:$hour
";

echo "分:$minute
";

echo "秒:$second
";

echo "轉換為timestamp:" . $timestamp . "
";

echo "從timestamp轉換回來:" . date("y-m-d h:i:s",$timestamp) . "
";

echo "從timestamp轉換回來:" . date("y-m-d h:i:s","1288263141") . "
";

header("Content-Type:text/html; charset=utf-8");

echo (strtotime("2010-10-28 10:52:21")). "
"; // MySQL格式的字串轉換成秒數

echo (strtotime("2010-10-01 00:00:00")). "
";

$d = date("Y-m-d H:i:s", time()); // 秒數轉換成MySQL格式的timestamp

echo $d. "
";

結果為:

array

0 => string '2000' (length=4)

1 => string '02' (length=2)

2 => string '12 16:20:35' (length=11)

array

0 => string '12 16' (length=5)

1 => string '20' (length=2)

2 => string '35' (length=2)

字串時間:2000-02-12 16:20:35

年:2000

月:02

日:12

時:16

分:20

秒:35

轉換為timestamp:950372435

從timestamp轉換回來:00-02-12 04:20:35

從timestamp轉換回來:10-10-28 10:52:21

1288263141

1285891200

2011-10-20 14:48:27

格式化時間函數的常見值

函數date ( string format [, int timestamp])可以格式化日期/時間,參數format是格式化字串,最常用的值如下:

Y:4 位元字完整表示的年份

y:2位元字表示的年份

m:數字表示的月份

M:三個字母縮寫表示的月份

d:月份中的第幾天

D:星期中的第幾天

h:小時,12 小時格式,有前置字元為零

H:小時,24 小時格式,有前置字元為零

i:有前置字元為零的分鐘數

I:是否為夏令時

s:秒數

S:每月天數後面的英文尾碼,2 個字元

w:星期中的第幾天,數字表示

W:ISO-8601 格式年份中的第幾周,每周從星期一開始

l:星期幾,完整的文字格式設定

L:是否為閏年

g:12 小時格式,沒有前置字元為零

G:24 小時格式,沒有前置字元為零

如果發覺date函數得出的小時數與實際相差8小時,請加上date_default_timezone_set('Etc/GMT-8');

getdate(timestamp) 函數可以取得日期/時間資訊。

返回一個根據timestamp 得出的包含有日期資訊的結合數組。如果沒有給出時間戳記,則認為是當前本地時間。

數組中的單元如下:

鍵名

說明

傳回值例子

"seconds"

秒的數字表示

0 到59

"minutes"

分鐘的數字表示

0 到59

"hours"

小時的數字表示

0 到23

"mday"

月份中第幾天的數字表示

1 到31

"wday"

星期中第幾天的數字表示

0(表示星期天)到6(表示星期六)

"mon"

月份的數字表示

1 到12

"year"

4 位元字表示的完整年份

例如:1999 或2003

"yday"

一年中第幾天的數字表示

0 到365

"weekday"

星期幾的完整文本表示

Sunday 到Saturday

"month"

月份的完整文本表示

January 到December

0

自從Unix 紀元開始至今的秒數,和time() 的傳回值以及用於date() 的值類似。

系統相關,典型值為從-2147483648 到2147483647。

執行個體:

//顯示的格式: 年-月-日 小時:分鐘:妙

$showtime=date("Y-m-d H:i:s");

echo '顯示時間的格式為:'.$showtime."
";

結果為:

顯示時間的格式為:2011-10-20 14:48:27

本文出自 “php技術” 部落格

http://www.bkjia.com/PHPjc/478577.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/478577.htmlTechArticle關於時間的函數: strftime 根據地區設定格式化本地時間/日期 strptime 解析由strftime() 產生的日期/時間 setlocale 函數設定地區資訊(地區信...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.