您需要检查客户端如何表示星期几。此函数返回 0 代表星期日。ISO 8601 使用 7 代表星期日。
顺便说一句,您也可以使用模除法计算星期几
$dow = (1 + $julianday) % 7; // 返回 0 代表星期日。
$dow = ($julianday % 7) + 1; // 返回 7 代表星期日。
https://en.wikipedia.org/wiki/Julian_day#Finding_day_of_week_given_Julian_day_number
为了使事情更混乱。儒略日从格林威治标准时间中午开始。某些程序(例如 SQLITE3)使用实数来记录日期和时间。如果您将浮点数传递给此函数;它将为上午和下午返回不同的星期几。
当给定带有小数部分的儒略日时,您需要添加半天,并且可能需要根据您的时区进行进一步调整。