好的你們能幫助我嗎?這是功能。它獲得3個參數,並返回一個數組。它將格里曆轉換爲波斯日期。它在包括/ dateConvert.php函數返回數組不工作。 php
public static function toJalali($g_y, $g_m, $g_d)
{
$g_days_in_month = array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
$j_days_in_month = array(31, 31, 31, 31, 31, 31, 30, 30, 30, 30, 30, 29);
$gy = $g_y-1600;
$gm = $g_m-1;
$gd = $g_d-1;
$g_day_no = 365*$gy+self::div($gy+3, 4)-self::div($gy+99, 100)+self::div($gy+399, 400);
for ($i=0; $i < $gm; ++$i)
$g_day_no += $g_days_in_month[$i];
if ($gm>1 && (($gy%4==0 && $gy%100!=0) || ($gy%400==0)))
$g_day_no++;
$g_day_no += $gd;
$j_day_no = $g_day_no-79;
$j_np = self::div($j_day_no, 12053);
$j_day_no = $j_day_no % 12053;
$jy = 979+33*$j_np+4*self::div($j_day_no, 1461);
$j_day_no %= 1461;
if ($j_day_no >= 366) {
$jy += self::div($j_day_no-1, 365);
$j_day_no = ($j_day_no-1)%365;
}
for ($i = 0; $i < 11 && $j_day_no >= $j_days_in_month[$i]; ++$i)
$j_day_no -= $j_days_in_month[$i];
$jm = $i+1;
$jd = $j_day_no+1;
return array($jy, $jm, $jd);
}
和DIV是一個簡單的除法功能
private static function div($a, $b)
{
return (int) ($a/$b);
}
現在,當我寫類似下面的代碼沒有做任何事情。
<?php
require ("Includes/dateConvert.php");
$yy = 1989;
$mm = 8;
$dd = 31;
echo $yy.$mm.$dd;
echo "<br><br>";
$jj = toJalali($yy, $mm, $dd);
echo $jj[0].$jj[1].$jj[2];
?>
我在做什麼錯?謝謝。
'公共靜態function'至少是類的成員。調用'$ jj = toJalali'意味着你調用其他函數。 –
哦,你是對的。所以我必須單獨排除功能並正確使用它? –
調用靜態函數就像'ClassName :: MethodName' –