在上篇文章中,我們了解了什么是法國共和歷法,知道了什么是儒略日,同時我們也知道了《php日歷之儒略日計數與法國共和歷法的日期間如何相互轉換》,這次我們來看看儒略日計數如何轉換為Unix時間戳的吧。
今天我們接著這個專題來學一下php日歷中的其他函數,不過在本篇文章開始之前,我想問大家一個問題,這個問題就是大家知道Unix時間戳嗎?為了防止有些小伙伴不知道,我們還是先來講解一下Unix時間戳吧。
unix時間戳是從1970年1月1日
(UTC/GMT的午夜)開始所經過的秒數,不考慮閏秒。
UNIX時間戳的0按照ISO 8601規范為 :1970-01-01T00:00:00Z.
一個小時表示為UNIX時間戳格式為:3600秒
;一天表示為UNIX時間戳為86400秒,閏秒不計算。
在大多數的UNIX系統中UNIX時間戳存儲為32位,這樣會引發2038年問題或Y2038。
了解Unix時間戳相關知識后,接下來就來正式開始我們的介紹。
按照慣例,我們還是先來先一個小案例。
現在已知儒略日計數為2440590
,那么請問Unix時間戳是多少?
接下來讓我們看看代碼:
<?php echo jdtounix(2440590); ?>
其結果是
172800
在這個例子中,我們可以看到使用了jdtounixh
函數,跟著案例看函數,是不是大致能了解該函數做了什么。其實很簡單,jdtounixh函數就是將一個數字轉化成了另一個數字。知道這個之后,我們再來詳細看一下這個函數。
語法
jdtounix(介于2440588和2465342之間的儒略日數字);
jdtounix() 函數把儒略日計數轉換為 Unix 時間戳。
特別需要注意的是:
如果參數 jd 不在 Unix 新紀元之中(意味著格利高里年必須介于 1970
和 2037
之間,或者 jd >= 2440588
且 jd <= 2465342
),則該函數將返回 false。所返回的時間是本地時間。
這里有你想學的php知識哦→php視頻教程←