PHP日期和在线日期之间的工作日问题相矛盾


Contradicting issue of Weekday between PHP Date and Online Date

当我在这里查看在线查看 622-07-19 的工作日时,它显示星期五。但是,当我使用PHP时,它会显示星期六。哪一个正确显示工作日?

<?php echo date('Y-m-d H:i:s l', strtotime('0622-07-19 00:00:00'));?>

如果你在谈论公历,你的在线检查器是正确的 - 现在是星期五,我不明白 PHP 输出。可能是它把它解释为儒略日期,但这也是不正确的。

我怀疑你的意思公历,因为 622 年 7 月 19 日(公历)是伊斯兰历的民用时代。这等于 622 年 7 月 16 日(儒略历),这是指代日期的更常用方式。

来自维基百科关于伊斯兰日历的文章:

伊斯兰历正月(伊斯兰历1 Muharram 1)的第一天是公元622年7月16日星期五,相当于儒略历中的民用表格日期(同一日光)。[22][23]伊斯兰日始于7月15日傍晚的前一天日落。

(关于从日落开始的日子的部分让事情变得很混乱,但我建议你暂时忽略它 - 它不会解释你的 PHP 结果。

如果你有兴趣找出更多关于PHP出错的地方,我建议你做一个二进制切章来找出问题的确切位置 - 在PHP和其他来源中尝试各种日期。所以今天尝试(这很可能是正确的,但只是为了理智是值得的),然后在 622 和今天之间,等等。

一旦你确定了PHP正确的日期,应该更容易弄清楚为什么会发生这种情况。