UNIX_TIMESTAMP(), UNIX_TIMESTAMP(date)
若無參數調用,則返回一個Unix timestamp ('1970-01-01 00:00:00' GMT 之後的秒數) 作為無符號整數。若用date 來呼叫UNIX_TIMESTAMP(),它會將參數值以'1970-01-01 00:00:00' GMT後的秒數的形式傳回。 date 可以是一個DATE 字串、一個 DATETIME字串、一個 TIMESTAMP或一個當地時間的YYMMDD 或YYYMMDD格式的數字。
mysql> SELECT UNIX_TIMESTAMP(); -> 882226357 mysql> SELECT UNIX_TIMESTAMP('1997-10-04 22:23:00'); -> 875996580
當 UNIX_TIMESTAMP被用在 TIMESTAMP列時, 函數直接返回內部時戳值, 而不進行任何隱含的 “string-to-Unix-timestamp”轉化。假如你向UNIX_TIMESTAMP()傳遞一個溢出日期,它會返回 0,但請注意只有基本範圍檢查會被履行 (年份從1970 到 2037, 月份從01到12,日期從 01 到31)。
PHP下對時間戳與時間相互轉換的範例:
PHP code
$timestamp = 1210003200; $datetime = date('Y-m-d H:i:s', $timestamp); echo "该时间戳代表的时间:", $datetime, "<br>\n"; echo "从此时间重新转回时间戳:", strtotime($datetime), "<br>\n";
MySQL下時間戳轉換的範例:
SQL code
select from_unixtime(1210003200) datetime, unix_timestamp(from_unixtime(1210003200)) timestamp;