php準(zhǔn)確計(jì)算復(fù)活節(jié)日期的方法
更新時(shí)間:2015年04月18日 11:21:11 作者:不吃皮蛋
這篇文章主要介紹了php準(zhǔn)確計(jì)算復(fù)活節(jié)日期的方法,涉及php操作日期的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
本文實(shí)例講述了php準(zhǔn)確計(jì)算復(fù)活節(jié)日期的方法。分享給大家供大家參考。具體如下:
<?PHP
function isLeapYear( $nYEAR ) {
if((($nYEAR % 4 == 0) AND !($nYEAR % 100 == 0)) AND ($nYEAR % 400 != 0))
{
return TRUE;
} else {
return FALSE;
}
}
function div( $a, $b ){
return( $a - ( $a % $b )) / $b;
}
function easterSunday( $nYEAR ) {
// The function is able to calculate the date
//of eastersunday back to the year 325,
// but mktime() starts at 1970-01-01!
if ( $nYEAR < 1970 ) {
$dtEasterSunday = mktime( 1,1,1,1,1,1970 );
} else {
$nGZ = ( $nYEAR % 19 ) + 1;
$nJHD = div( $nYEAR, 100 ) + 1;
$nKSJ = div( 3 * $nJHD, 4 ) - 12;
$nKORR = div( 8 * $nJHD + 5, 25 ) - 5;
$nSO = div( 5 * $nYEAR, 4 ) - $nKSJ - 10;
$nEPAKTE = (( 11 * $nGZ + 20 + $nKORR - $nKSJ ) % 30 );
if (( $nEPAKTE == 25 OR $nGZ == 11 ) AND $nEPAKTE == 24 ) {
$nEPAKTE = $nEPAKTE + 1;
}
$nN = 44 - $nEPAKTE;
if( $nN < 21 ) {
$nN = $nN + 30;
}
$nN = $nN + 7 - (( $nSO + $nN ) % 7 );
$nN = $nN + isLeapYear( $nYEAR );
$nN = $nN + 59;
$nA = isLeapYear( $nYEAR );
// Month
$nNM = $nN;
if ( $nNM > ( 59 + $nA )) {
$nNM = $nNM + 2 - $nA;
}
$nNM = $nNM + 91;
$nMONTH = div( 20 * $nNM, 611 ) - 2;
// Day
$nNT = $nN;
$nNT = $nN;
if ( $nNT > ( 59 + $nA )) {
$nNT = $nNT + 2 - $nA;
}
$nNT = $nNT + 91;
$nM = div( 20 * $nNT, 611 );
$nDAY = $nNT - div( 611 * $nM, 20 );
$dtEasterSunday = mktime( 0,0,0,$nMONTH,$nDAY,$nYEAR );
}
return $dtEasterSunday;
}
?>
希望本文所述對(duì)大家的php程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:
- php下實(shí)現(xiàn)農(nóng)歷日歷的代碼
- php 陰歷-農(nóng)歷-轉(zhuǎn)換類(lèi)代碼
- php實(shí)現(xiàn)的農(nóng)歷算法實(shí)例
- php陽(yáng)歷轉(zhuǎn)農(nóng)歷優(yōu)化版
- PHP實(shí)現(xiàn)陽(yáng)歷到農(nóng)歷轉(zhuǎn)換的類(lèi)實(shí)例
- PHP 實(shí)現(xiàn)公歷日期與農(nóng)歷日期的互轉(zhuǎn)換
- php實(shí)現(xiàn)陽(yáng)歷陰歷互轉(zhuǎn)的方法
- PHP編程實(shí)現(xiàn)陽(yáng)歷轉(zhuǎn)換為陰歷的方法實(shí)例
- php實(shí)現(xiàn)獲取農(nóng)歷(陰歷)、節(jié)日、節(jié)氣的類(lèi)與用法示例
相關(guān)文章
php檢查日期函數(shù)checkdate用法實(shí)例
這篇文章主要介紹了php檢查日期函數(shù)checkdate用法,實(shí)例分析了php中checkdate函數(shù)的使用技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-03-03
PHP中的str_repeat函數(shù)在JavaScript中的實(shí)現(xiàn)
PHP中有一個(gè)函數(shù):String str_repeat($str, num);挺好用的,在 本文為大家介紹下次函數(shù)在js中的實(shí)現(xiàn),感興趣的朋友可以參考下2013-09-09
PHP+RabbitMQ實(shí)現(xiàn)消息隊(duì)列的完整代碼
這篇文章主要給大家介紹了關(guān)于利用PHP+RabbitMQ實(shí)現(xiàn)消息隊(duì)列的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用PHP具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03
PHP實(shí)現(xiàn)Redis分布式鎖的示例代碼
并發(fā)寫(xiě)入問(wèn)題可能導(dǎo)致數(shù)據(jù)不一致或重復(fù)寫(xiě)入,為了解決這個(gè)問(wèn)題,我們可以使用Redis實(shí)現(xiàn)分布式鎖,本文主要為大家介紹了PHP實(shí)現(xiàn)Redis分布式鎖的相關(guān)知識(shí),希望對(duì)大家有所幫助2023-12-12
php中比較簡(jiǎn)單的導(dǎo)入phpmyadmin生成的sql文件的方法
做網(wǎng)站的時(shí)候 我們會(huì)制作一個(gè)安裝文件 就需要用到sql文件創(chuàng)建數(shù)據(jù)庫(kù)。分享一下 我所用的方法。2011-06-06

