如何在PHP中将Hijri日期转换为gregorian?
我想把这个日期:1436年9月13日(它是Hijiri)转换为2015年6月30日(它是Gregorian)。 我试过:如何在PHP中将Hijri日期转换为gregorian?,php,date,Php,Date,我想把这个日期:1436年9月13日(它是Hijiri)转换为2015年6月30日(它是Gregorian)。 我试过: function HijriToJD($m, $d, $y){ return (int)((11 * $y + 3) / 30) + 354 * $y + 30 * $m - (int)(($m - 1) / 2) + $d + 1948440 - 385; } $date = HijriToJD(09, 13, 1436); echo jdtogre
function HijriToJD($m, $d, $y){
return (int)((11 * $y + 3) / 30) + 354 * $y +
30 * $m - (int)(($m - 1) / 2) + $d + 1948440 - 385;
}
$date = HijriToJD(09, 13, 1436);
echo jdtogregorian($date);
当我制作compile时,我得到了10/7/2014。
有人知道吗???通过
09
,因为月份是个问题。。。。在PHP中,带a的数字被视为八进制09
是无效的八进制,因此它被视为0
召唤
$r=HijriToJD(9, 13, 1436);
(本月无前导零)应给出正确的结果
return floor((11 * $year + 3) / 30) + floor(354 * $year) + floor(30 * $month)
- floor(($month - 1) / 2) + $day + 1948440 - 386;
您可以使用地板而不是int
也许可以看看评论#4你能告诉我
09/13/1436
?09->month,13->day,1436->year中的日期和月份是什么吗?我在网站上做了转换,所以我知道一定是2015-06-30。所以我不知道为什么我得到了2014年7月10日。是的!!谢谢,你是我的英雄。在一年中如此重要的时刻,我不能让你把月份搞错,是吗?:)