Menghitung umur dengan PHP berdasarkan tanggal lahir

Bismillaahirrohmaanirrohiim…

Untuk menghitung umur dengan PHP caranya sangat mudah, gunakan fungsi dibawah ini:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
function time_elapsed_string($datetime, $full = false) {
$now = new DateTime;
$ago = new DateTime($datetime);
$diff = $now->diff($ago);
$diff->w = floor($diff->d / 7);
$diff->d -= $diff->w * 7;
$string = array(
'y' => 'tahun',
'm' => 'bulan',
'w' => 'minggu',
'd' => 'hari',
'h' => 'jam',
'i' => 'menit',
's' => 'detik',
);
foreach ($string as $k => &$v) {
if ($diff->$k) {
$v = $diff->$k . ' ' . $v;
} else {
unset($string[$k]);
}
}
if (!$full) $string = array_slice($string, 0, 1);
return $string ? implode(', ', $string) . '' : 'baru lahir';
}
function time_elapsed_string($datetime, $full = false) { $now = new DateTime; $ago = new DateTime($datetime); $diff = $now->diff($ago); $diff->w = floor($diff->d / 7); $diff->d -= $diff->w * 7; $string = array( 'y' => 'tahun', 'm' => 'bulan', 'w' => 'minggu', 'd' => 'hari', 'h' => 'jam', 'i' => 'menit', 's' => 'detik', ); foreach ($string as $k => &$v) { if ($diff->$k) { $v = $diff->$k . ' ' . $v; } else { unset($string[$k]); } } if (!$full) $string = array_slice($string, 0, 1); return $string ? implode(', ', $string) . '' : 'baru lahir'; }
function time_elapsed_string($datetime, $full = false) {
    $now = new DateTime;
    $ago = new DateTime($datetime);
    $diff = $now->diff($ago);

    $diff->w = floor($diff->d / 7);
    $diff->d -= $diff->w * 7;

    $string = array(
        'y' => 'tahun',
        'm' => 'bulan',
        'w' => 'minggu',
        'd' => 'hari',
        'h' => 'jam',
        'i' => 'menit',
        's' => 'detik',
    );
    foreach ($string as $k => &$v) {
        if ($diff->$k) {
            $v = $diff->$k . ' ' . $v;
        } else {
            unset($string[$k]);
        }
    }

    if (!$full) $string = array_slice($string, 0, 1);
    return $string ? implode(', ', $string) . '' : 'baru lahir';
}

Sekarang kita panggil fungsi diatas sebagai berikut:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
$tgl_lahir = '1984-08-08';
echo time_elapsed_string($tgl_lahir);
//hasilnya 37 tahun
echo time_elapsed_string($tgl_lahir, true);
//hasilnya 37 tahun, 11 bulan, 1 minggu, 2 jam, 47 detik
$tgl_lahir = '1984-08-08'; echo time_elapsed_string($tgl_lahir); //hasilnya 37 tahun echo time_elapsed_string($tgl_lahir, true); //hasilnya 37 tahun, 11 bulan, 1 minggu, 2 jam, 47 detik
$tgl_lahir = '1984-08-08';
echo time_elapsed_string($tgl_lahir);
//hasilnya 37 tahun
echo time_elapsed_string($tgl_lahir, true);
//hasilnya 37 tahun, 11 bulan, 1 minggu, 2 jam, 47 detik

Jika diketahui jam dan menitnya akan lebih lengkap dan akurat jumlah umurnya.

Baca Juga:   json decode pada PHP gagal karena ada line break nya

Fungsi menghitung umur ini juga bisa untuk menghitung hal lainnya. Tinggal ganti $tgl_lahir menjadi variabel yang lain, misalnya $tgl_posting = ‘2022-02-15 14:21:65’;

Demikian, semoga bermanfaat…

Bagikan

You May Also Like

About the Author: rasupe

Leave a Reply

Your email address will not be published. Required fields are marked *