这个问题把我弄糊涂了。
Parse error: syntax error, unexpected '–' (T_STRING) in C:\xampp\htdocs\*****\*****\functions.php on line 187
下面代码框中的第 9 行的第 187 行。在 $zjd = (int)((1461...
这是什么 ?
这个函数打印出回历,它依赖于月亮,它不同于它依赖于太阳的公历。Date();
函数打印公历日期,没有任何回历日期的功能(也称为伊斯兰日历)。这两者之间是有区别的。例如,公历中的年份是 365.25,但回历日历中的年份是 354.367。还有几个月……等等。
发生了什么?
我做了一个函数将格里高利转换为回历,但它不是那么准确,所以我在网上搜索了一个。我找到了很多准确的,但都是用 JavaScript 编写的。并且刚刚发现这只是用 PHP 编写的精美作品。
我试图就这个问题联系作者,但他没有回应。于 2011 年发表此文。
部分功能
function hijriCal(){
$theDate = getdate();
$wday = $theDate['wday'];
$hr = $theDate['mday'];
$theMonth = $theDate['mon'];
$theYear = $theDate['year'];
if (($theYear > 1582) || (($theYear == 1582) && ($theMonth > 10)) || (($theYear == 1582) && ($theMonth == 10) && ($hr > 14))) {
$zjd = (int)((1461 * ($theYear + 4800 + (int)(($theMonth – 14) / 12))) / 4) + (int)((367 * ($theMonth – 2 – 12 * ((int)(($theMonth – 14) / 12)))) / 12) – (int)((3 * (int)((($theYear + 4900 + (int)(($theMonth – 14) / 12)) / 100))) / 4) + $hr – 32075;
} else {
$zjd = 367 * $theYear – (int)((7 * ($theYear + 5001 + (int)(($theMonth – 9) / 7))) / 4) + (int)((275 * $theMonth) / 9) + $hr + 1729777;
}