首頁 >後端開發 >php教程 >php+mysql 處理時間

php+mysql 處理時間

不言
不言原創
2018-05-31 14:22:552624瀏覽

這篇文章主要介紹了關於php mysql 處理時間,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下

雖然mysql中有自己的時間類型,但是為了相容性考慮,php中一般用time函數取出unix時間戳。儲存到資料庫中。
1.unix時間戳記
PHP中的time函數回傳的就是unix timestamp,預設情況下PHP解析顯示位元格林威治標準時間。
是從1970年1月1日(UTC/GMT的午夜)開始所經過的秒數。
2.unix時間戳記轉化為人類識別日期

$str = date(“Y-m-d H:i:s”, time())得出的是格林威治时间,非中国时间。加上8小时即可。
$str = date(“Y-m-d H:i:s”, time()+8*3600)

將unix時間戳轉化為中國時間:
3.人類識別日期轉化為unix時間戳

$int = strtotime(“2014-11-8 08:12:24”);

4.資料庫類型
由於mysql資料庫的int範圍和unix時間戳類型一樣,所以直接crime int,即可。 create time用int表示。看有些sql檔案中顯示 crime int(11),這個括號中的11是mysql預設的顯示長度,而非資料大小的長度。
mysql中int預設為(-2 147 483 648,2 147 483 647),10位元可以滿足需求。
5.將目前時間寫入資料庫

$n = time();
$query = "insert into time_test values( $n )";
$ret = mysql_query($query, $con);

6.將資料庫時間顯示為中國時間

$query = "select ctime from time_test;";
$ret = mysql_query($query, $con);
if(!$ret)
{
die("query error: " . mysql_error());
}

while ( $arr = mysql_fetch_array($ret))
{
//数据库中取出的是字符串,为保险起见,转换为int类型。
echo date("Y-m-d H:i:s", intval($arr["ctime"]) + 8*3600) . "<br>";
}

7927e6ce4c86253e35296f5e6f146552

################# #以上就是本篇文章的全部內容了,感謝大家閱讀。 ######相關推薦:#########php mysql實作登入註冊修改密碼網頁############php mysql jquery實作行事曆簽到功能的方法### ###

以上是php+mysql 處理時間的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn