我尝试在 php 中计算复活节日期。
echo(date("2012: t.n.Y", easter_date(2012)).'<br>'); // 2012: 30.4.2012
这个日期对于东正教教堂来说是正确的。但我想要普通的!
我下次尝试使用 easter_days
函数:
function easter($year) {
$date = new DateTime($year.'-03-21');
$date->add(new DateInterval('P'.easter_days($year).'D'));
echo $year.": ".$date->format('t.m.Y') . "<br>\n";
}
easter(2012); // 2012: 30.4.2012
测试哦 PHP 5.2.6 和 5.3.6。我也尝试过更改时区,但没有成功。
最佳答案
您的日期格式错误。 t
是给定月份(四月 = 30)中的天数。使用 d
表示月份中的某天:
echo(date("d.m.Y", easter_date(2012)).'<br>');
// will output: 08.04.2012
顺便说一句:正统的复活节日期是今年的 4 月 15 日。
关于php - php中错误的复活节日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9000081/