Cara menghitung Umur menggunakan PHP

Pada artikel kali ini akan dibahas mengenai cara menghitung umur dengan PHP serta penerapan lainnya.
189  
       

PHP merupakan salah satu bahasa pemrograman web yang paling “berjibun” di Indonesia, setidaknya itu menurut salah satu anggota grup Aprogsi (Asosiasi Programmer Indonesia). Namun, kalau menurut saya ditahun sekarang ini sudah mulai banyak migrasi ke NodeJS (microservice) dan Java. Tapi kalaulah kita butuh cepat, pasti kita akan mencoba mengunakan yang sudah kita pahami dulu sebelumnya bukan? Berikut ini adalah cara menghitung umur dengan menggunakan PHP.

Rumus kode PHP

Pertama kali kita akan menggunakan rumus-nya terlebih dahulu. Rumus yang pertama adalah DateTime::diff. Dengan menggunakan rumus tersebut, menghitung Umur di PHP menjadi sangatlah mudah. Cukup hanya 3 baris saja, perhitungan umur dalam tahun sudah terdefinisi. Namun, jika kita menggunakan versi PHP 5.2.X menjadi lain ceritanya. Berikut ini adalah potongan rumusnya untuk PHP 5.3 ke atas.

$from = new DateTime('1970-02-01');
$to   = new DateTime('today');
echo $from->diff($to)->y;

 
Sementara untuk PHP versi 5.2, kita akan mencoba menghitung tahun secara manual dengan melakukan proses aritmatika. Rumus yang harus kita pahami adalah fungsi date dan substr. Fungsi date ini akan menghasilkan tanggal sekarang sesuai dengan format yang ada didalam parameter pertama. Contoh date(‘Y’) yang akan menghasilkan nilai 4 tahun ini. Sementara substr itu fungsinya adalah memotong perjumlah karakter. Contoh substr($months,1) itu berarti akan memotong 1 karakter dari nilai $months. Kenapa demikian, karena $months dihasilkan dari date(‘m’) adalah nilai bulan yang ada angka 0 didepannya. Contoh bulan februari (bulan ke-2) maka hasilnya adalah 02. Berikut ini adalah contohnya.

function CurrentAge($d, $m, $y)
{
   $years  = date('Y') - $y;
   $months = date('m') - $m;
   $days   = date('d') - $d;

   if (substr($months, 0, 1) == '-') {
      $years = $years - 1;
      $months = 12 - substr($months, 1);
   }

   if (substr($days, 0, 1) == '-') {
      $days = date('t') - substr($days, 1);
   }

   return $years;
}

echo CurrentAge('21', '02', '1993');

 
Setelah memiliki rumus untuk menghitung umur dengan PHP, kita juga bisa menghitung TMT dengan PHP.

Menghitung TMT dengan PHP

TMT atau Terhitung mulai tanggan biasanya ada didalam aplikasi untuk PNS yang akan menghitung rentang masa bakti di tiap jabatanya. Ini tentunya sangatlah unik. Karena bukan hanya jumlah tahunya saja yang harus muncul tapi dengan bulannya. Sehingga hasilnya haruslah seperti ini TMT 2 tahun 3 bulan. Sebetulnya rumusnya sama dengan menghitung Umur, hanya saja untuk sisa bulan akan kita hitung.

Contoh Kode menghitung TMT dengan PHP.

Berikut ini adalah potongan kode untuk PHP versi 5.3 keatas.

$tgl1 = new DateTime('2014-05-31');
$tgl2 = new DateTime('2016-08-31');
echo 'TMT: '.$tgl1->diff($tgl2)->y.' tahun '.$tgl1->diff($tgl2)->m.' bulan';

Sementara untuk PHP versi 5.2 kebawah, kita bisa memodifikasi kode diatas supaya bulannya bisa dihitung. Demikian. Semoga membantu.