Esempio n. 1
0
function jalali_to_gregorian($j_y, $j_m, $j_d, $mod = '')
{
    $j_y = tr_num($j_y);
    $j_m = tr_num($j_m);
    $j_d = tr_num($j_d);
    /* <= :اين سطر ، جزء تابع اصلي نيست */
    $d_4 = ($j_y + 1) % 4;
    $doy_j = $j_m < 7 ? ($j_m - 1) * 31 + $j_d : ($j_m - 7) * 30 + $j_d + 186;
    $d_33 = (int) (($j_y - 55) % 132 * 0.0305);
    $a = ($d_33 != 3 and $d_4 <= $d_33) ? 287 : 286;
    $b = (($d_33 == 1 or $d_33 == 2) and ($d_33 == $d_4 or $d_4 == 1)) ? 78 : (($d_33 == 3 and $d_4 == 0) ? 80 : 79);
    if ((int) (($j_y - 19) / 63) == 20) {
        $a--;
        $b++;
    }
    if ($doy_j <= $a) {
        $gy = $j_y + 621;
        $gd = $doy_j + $b;
    } else {
        $gy = $j_y + 622;
        $gd = $doy_j - $a;
    }
    foreach (array(0, 31, $gy % 4 == 0 ? 29 : 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31) as $gm => $v) {
        if ($gd <= $v) {
            break;
        }
        $gd -= $v;
    }
    return $mod == '' ? array($gy, $gm, $gd) : $gy . $mod . $gm . $mod . $gd;
}
Esempio n. 2
0
function jalali_to_jgregorian($j_y, $j_m, $j_d, $mod = '')
{
    /* => => [ http://jdf.scr.ir/jdf ] */
    $j_y = tr_num($j_y);
    $j_m = tr_num($j_m);
    $j_d = tr_num($j_d);
    /*<= <= :اين جزء تابع اصلي نيست <= */
    $doy_j = $j_m < 7 ? ($j_m - 1) * 31 + $j_d : ($j_m - 7) * 30 + $j_d + 186;
    if ($doy_j > ($j_y % 4 == 3 ? 287 : 286)) {
        $gy = $j_y + 622;
        $gd = $doy_j - ($j_y % 4 == 3 ? 287 : 286);
    } else {
        $gy = $j_y + 621;
        $gd = $doy_j + 79;
    }
    $d_m_g_a = array(0, 31, $gy % 4 == 0 ? 29 : 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
    $gdi = 1;
    foreach ($d_m_g_a as $i => $v) {
        if ($gdi - $v > 0) {
            $gd -= $v;
            $gdi = $gd;
            $gm = $i + 1;
            $i++;
        } else {
            $gdi = 0;
        }
    }
    /**/
    return $mod == '' ? array($gy, $gm, $gd) : $gy . $mod . $gm . $mod . $gd;
}
Esempio n. 3
0
 function jcheckdate($jm, $jd, $jy)
 {
     $jm = tr_num($jm);
     $jd = tr_num($jd);
     $jy = tr_num($jy);
     $l_d = $jm == 12 ? $jy % 33 % 4 - 1 == (int) ($jy % 33 * 0.05) ? 30 : 29 : 31 - (int) ($jm / 6.5);
     return ($jm > 0 and $jd > 0 and $jy > 0 and $jm < 13 and $jd <= $l_d) ? true : false;
 }
Esempio n. 4
0
function jalali_to_gregorian($jy, $jm, $jd, $mod = '')
{
    $jy = tr_num($jy);
    $jm = tr_num($jm);
    $jd = tr_num($jd);
    /* <= Extra :اين سطر ، جزء تابع اصلي نيست */
    $gy = $jy <= 979 ? 621 : 1600;
    $jy -= $jy <= 979 ? 0 : 979;
    $days = 365 * $jy + (int) ($jy / 33) * 8 + (int) (($jy % 33 + 3) / 4) + 78 + $jd + ($jm < 7 ? ($jm - 1) * 31 : ($jm - 7) * 30 + 186);
    $gy += 400 * (int) ($days / 146097);
    $days %= 146097;
    if ($days > 36524) {
        $gy += 100 * (int) (--$days / 36524);
        $days %= 36524;
        if ($days >= 365) {
            $days++;
        }
    }
    $gy += 4 * (int) ($days / 1461);
    $days %= 1461;
    $gy += (int) (($days - 1) / 365);
    if ($days > 365) {
        $days = ($days - 1) % 365;
    }
    $gd = $days + 1;
    foreach (array(0, 31, ($gy % 4 == 0 and $gy % 100 != 0 or $gy % 400 == 0) ? 29 : 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31) as $gm => $v) {
        if ($gd <= $v) {
            break;
        }
        $gd -= $v;
    }
    return $mod == '' ? array($gy, $gm, $gd) : $gy . $mod . $gm . $mod . $gd;
}
Esempio n. 5
0
    } elseif ($_SESSION['update_check'] == 1) {
        echo 'color: green;';
    }
    ?>
"><?php 
    echo $_SESSION['stat_version'];
    ?>
</span><br>
                    <?php 
    _e('new_version_release_date', '', ':');
    ?>
<span style="float: <?php 
    echo getLBA_rev();
    ?>
"><?php 
    echo tr_num(LBDP($_SESSION['stat_date']));
    ?>
</span><br>
                    <?php 
    _e('description', '', ':');
    ?>
<span style="float: <?php 
    echo getLBA_rev();
    ?>
"><?php 
    echo $_SESSION['stat_desc'];
    ?>
</span><br>
                <?php 
}
?>