PHP - 日曆 jdtounix() 函式



PHP 日曆jdtounix()函式用於返回與給定儒略日 (jday) 對應的 Unix 時間戳,如果 jday 不在 Unix 紀元內 (1970 年到 2037 年的公曆年,或 2440588 < jday < 2465342),則返回 FALSE。返回的時間是本地時間(而不是 GMT)。

語法

以下是 PHP 日曆jdtounix()函式的語法:

int jdtounix (int $julian_day)

引數

此函式接受$julian_day引數,該引數是 32 位系統上介於 2440588 和 2465342 之間的儒略日數,在 64 位系統上介於 2440588 和 106751993607888 之間。

返回值

jdtounix()函式返回給定儒略日開始時的 Unix 時間戳。

錯誤/異常

如果 julian_day 不在允許的範圍內,則會丟擲 ValueError 異常。

PHP 版本

jdtounix()函式首次引入到 PHP 4的核心程式碼中,並在 PHP 5、PHP 7 和 PHP 8 中繼續輕鬆執行。

示例 1

以下是 PHP 日曆jdtounix()函式的基本示例,用於演示函式的工作方式,我們將一個簡單的儒略日計數轉換為 Unix 時間戳。

<?php
   // Example Julian Day
   $jday = 2457754;  

   // Conversion
   $timestamp = jdtounix($jday);

   // Display the timestamp
   echo $timestamp;
?>

輸出

以下是以下程式碼的結果:

1483142400

示例 2

在下面的 PHP 程式碼中,我們將嘗試使用jdtounix()函式並將儒略日計數轉換為 Unix 時間戳。

<?php
   // Convert January 1, 2000, to Julian Day
   $jday = gregoriantojd(1, 1, 2000);  
   
   // Conversion
   $timestamp = jdtounix($jday);

   // Display the result
   echo $timestamp;
?> 

輸出

這將生成以下輸出:

946684800

示例 3

此示例顯示當儒略日計數超出了 Unix 時間戳範圍時使用jdtounix()函式會發生什麼情況,因此它將返回 false。

<?php
   // Julian Day count outside Unix timestamp range
   $jday = 1000000;  

   // Conversion
   $timestamp = jdtounix($jday);

   // Display the result
   var_dump($timestamp);
?> 

輸出

這將建立以下輸出:

bool(false)

示例 4

在此示例中,我們使用jdtounix()函式在將兩個儒略日計數轉換為 Unix 時間戳後查詢它們之間的天數。

<?php
   // First Julian Day
   $jday1 = 2457754;  
   
   // Second Julian Day, 5 days later
   $jday2 = 2457759;  
   $timestamp1 = jdtounix($jday1);
   $timestamp2 = jdtounix($jday2);
   
   $daysBetween = ($timestamp2 - $timestamp1) / (60 * 60 * 24);
   echo $daysBetween . " days";
?> 

輸出

以下是上述程式碼的輸出:

5 days
php_function_reference.htm
廣告
© . All rights reserved.