PHP
日期和时间 | Date and Time

easter_date

easter_date

(PHP 4, PHP 5, PHP 7)

easter_date - 在给定年份的复活节中获取Unix时间戳

Description

int easter_date ([ int $year = date("Y") ] )

返回给定年的复活节中对应于午夜的Unix时间戳。

Warning

如果年份超出Unix时间戳的范围(即1970年之前或2037之后),此函数将生成警告。

复活节日期由Nicaea议会在公元325年定义为在春分之后或之后的第一次满月之后的星期日。假设春分始终在3月21日落下,因此计算结果会降至确定满月的日期和接下来的星期日的日期。这里使用的算法是由Dionysius Exiguus在532年左右引入的。在朱利安历法下(1753年以前的几年),一个简单的19年周期被用来追踪月球的相位。根据公历(1753年以后的多年 - 由Clavius和Lilius设计,并于1582年10月由教皇格雷戈里十三世引入,并于1752年9月进入英国及其当时的殖民地),增加了两个修正因素以使周期更加准确。

Parameters

year

年份为1970年至2037年的数字。如果省略,则根据当地时间默认为当年。

Return Values

复活节日期为unix时间戳。

Examples

Example #1 easter_date() example

<?php echo date("M-d-Y", easter_date(1999)        // Apr-04-1999 echo date("M-d-Y", easter_date(2000)        // Apr-23-2000 echo date("M-d-Y", easter_date(2001)        // Apr-15-2001 ?>

Notes

注意: easter_date()依赖于系统的C库时间函数,而不是使用PHP的内部日期和时间函数。因此,easter_date()使用TZ环境变量来确定它应该运行的时区,而不是使用PHP的默认时区,这可能会导致与PHP中的其他日期函数一起使用此函数时出现意外行为。作为解决方法,您可以使用带有DateTime和DateInterval的easter_days()来计算PHP时区中复活节的开始,如下所示:<?php function get \ _easter \ _datetime($ year){$ base = new DateTime(“ $年03-21" ); $ days = easter \ _days($ year); 返回$ base-> add(new DateInterval(“P {$ days} D”)); {foref(范围(2012,2015)为$年){printf(“复活节%d在%s \ n”,$ year,得到\ _easter \ _datetime($ year) - >格式('F j') ); }?>上面的例子会输出:2012年的复活节是4月8日2013年的复活节是3月31日2014年的复活节是4月20日2015年的复活节是4月5日

← cal_to_jd

easter_days →

© 1997–2017 The PHP Documentation Group

根据知识共享署名许可证v3.0或更高版本授权。