Mencari Jumlah Bulan dalam Selisi waktu [PHP]

Mencari Jumlah Bulan dalam Selisi waktu dalam PHP dapat di lakukan, Hal ini akan berguna jika anda membuat sistem perhitungan kakulasi denda perbulan, seperti pembayar pajak.  Tapi kasus ini sebenarnya sudah lama saya terapkan terhadap pembangunan perizinan Dishubkominfo Sumatera Barat, tapi kali ini ketemu lagi dalam pembangunan Sistem Informasi Perizinan Dishubkominfo Kota Padang, Walau alur nyaris sama tapi masing2 mempunyai perbedaan, ya lah kan sudah beda yang 1 provinsi, dan satu lagi Kota. tapi saya ngk bahas itu/
Berikut adalah potongan script yang mana dapat melakukan kalulasi jumlah bulan dalam selisih waktu.
Code :
function bulan($start, $end, $period = "day")
{
    $day = 0;
    $month = 0;
    $month_array = array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
    $datestart = strtotime($start);
    $dateend = strtotime($end);
    $month_start = strftime("%m", $datestart);
    $current_year = strftime("%y", $datestart);
    $diff = $dateend - $datestart;
    $date = $diff / (60 * 60 * 24);
    $day = $date;

    $awal = 1;

    while($date > 0)
    {
        if($awal)
        {
            $loop = $month_start - 1;
            $awal = 0;
        }
        else
        {
            $loop = 0;
        }
        for ($i = $loop; $i < 12; $i++)
        {
            if($current_year % 4 == 0 && $i == 1)
                $day_of_month = 29;
            else
                $day_of_month = $month_array[$i];

            $date -= $day_of_month;

            if($date <= 0)
            {
                if($date == 0)
                    $month++;
                break;
            }
            $month++;
        }

        $current_year++;
    }
    switch($period)
    {
        case "day"   : return $day; break;
        case "month" : return $month; break;
        case "year"  : return intval($month / 12); break;
    }
}
function kita beri nama "bulan" jadi untuk pemanggilan , cuma panggil bulan('tgl1','tgl2');
masih bingung langsung saja lihat demonya di sini : DEMO
Pada demo saya memberikan kode sebegai berikut :
$waktulahir = '1987-07-23';
$waktusekarang = '2013-07-23';
$jumlah = bulan($waktulahir, $waktusekarang);
echo " Tanggal Lahir $waktulahir - $waktusekarang = $jumlah" ;
bulan($waktulahir, $waktusekarang); << pemanggilan Function yang sudah kita buat tadi.

5 Komentar

Berikan Komentar yang bermanfaat dan sehat.

  1. kodingan yg ane cari2 akhirnya ketemu juga disini. thanks mas !!!

    BalasHapus
  2. Komentar ini telah dihapus oleh pengarang.

    BalasHapus
  3. Artikelnya sangat untuk saya mengerjakan tugas
    My blog

    BalasHapus
Posting Komentar
Lebih baru Lebih lama