• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

Jaranguda

Belajar Mengajar

  • Home
  • Sponsor/Jasa
  • Tentang

Menghitung Umur dengan PHP

Last Updated on 15 February 2020 By tommy Leave a Comment

Menghitung usia bisa dilakukan dengan rumus sederhana tanggal hari ini dikurangi tanggal lahir, untuk menghitung dengan script bisa juga menggunakan logika unixtime (detik) saat ini dikurang unixtime tahun lahir dibagi jumlah detik pertahun. Karena yang dihitung adalah usia, maka angkanya akan digenapkan kebawah. Contoh

17.2 tahun = 17 tahun
17.9 tahun = 17 tahun
17.4 tahun = 17 tahun

Dengan begitu kita bisa membuat script PHP, contoh untuk tahun lahirnya adalah 28 Februari 2003.

$tahunLahir = "28-02-2003";
$unixTimeSaatIni = time();
$unixTimeTahunLahir= strtotime($tahunLahir);
$unixTimeDalamSetahun = 31536000;
$hitungUsia = ($unixTimeSaatIni - $unixTimeTahunLahir) / $unixTimeDalamSetahun;
echo $hitungUsia;
// hasilnya 16.977401826484

hasil script diatas 16.977401826484. Agar didapat angka bulat bisa menggunakan int

<?php
$tahunLahir = "28-02-2003";
$unixTimeSaatIni = time();
$unixTimeTahunLahir= strtotime($tahunLahir);
$unixTimeDalamSetahun = 31536000;
$hitungUsia = ($unixTimeSaatIni - $unixTimeTahunLahir) / $unixTimeDalamSetahun;
echo (int) $hitungUsia;
// hasilnya 16

atau dengan floor

<?php
$tahunLahir = "28-02-2003";
$unixTimeSaatIni = time();
$unixTimeTahunLahir= strtotime($tahunLahir);
$unixTimeDalamSetahun = 31536000;
$hitungUsia = ($unixTimeSaatIni - $unixTimeTahunLahir) / $unixTimeDalamSetahun;
echo floor($hitungUsia);
// hasilnya 16

lebih disarankan menggunakan floor, karena code lebih mudah untuk di pahami.

Cara lain untuk menghitung usia bisa menggunakan Datetime, scriptnya

<?php
$tahunLahir = "28-02-2003";
$tz  = new DateTimeZone('Asia/Jakarta');
$hitungUsia = DateTime::createFromFormat('d-m-Y', $tahunLahir, $tz)
     ->diff(new DateTime('now', $tz))
     ->y;
echo $hitungUsia;

Usia dalam Hari

Menghitung jumlah hari sejak anda lahir, bisa dengan unixtime, tetapi dibagi dengan jumlah detik dalam 1 hari.
1 hari = 24 jam
1 jam = 60 menit
1 menit = 60 detik

1 hari = 60*60*24 = 86400 detik (unixtime)

<?php
$unixTimeSaatIni = time();
$unixTimeTahunLahir= strtotime($tahunLahir);
$unixTimeDalamSehari = 86400;
$hitungUsia = ($unixTimeSaatIni - $unixTimeTahunLahir) / $unixTimeDalamSehari;
echo floor($hitungUsia) . ' hari';
// hasilnya 
// 6196 hari

versi datetime

<?php
$tahunLahir = "28-02-2003";
$tz  = new DateTimeZone('Asia/Jakarta');
$hitungUsia = DateTime::createFromFormat('d-m-Y', $tahunLahir, $tz)
     ->diff(new DateTime('now', $tz))
     ->days;
echo $hitungUsia . ' hari';
// hasilnya
// 6196 hari

Usia dalam Bulan

Kita anggap dalam sebulan ada 30 hari, jadi untuk bisa kita hitung jumlah detik 1 hari = 86400 * 30 = 2,592,000 detik. Karena dianggap, ini yang buat hasilnya kurang akurat

<?php
$unixTimeSaatIni = time();
$unixTimeTahunLahir= strtotime($tahunLahir);
$unixTimeDalamSebulan = 2592000;
$hitungUsia = ($unixTimeSaatIni - $unixTimeTahunLahir) / $unixTimeDalamSebulan;
echo floor($hitungUsia) . ' Bulan';
// 206 Bulan

solusinya silahkan cobain ;). kalo dengan Datetime

<?php
$tahunLahir = "28-02-2003";
$tz  = new DateTimeZone('Asia/Jakarta');
$hitungUsia = DateTime::createFromFormat('d-m-Y', $tahunLahir, $tz)
     ->diff(new DateTime('now', $tz));
echo (($hitungUsia->format('%y') * 12) + $hitungUsia->format('%m')) . ' Bulan';
// hasilnya 203 bulan

hasil yang benar adalah 203 bulan, dengan Datetime tersebut

Tulisan menarik lainnya

  • Menghitung Umur dengan Gambas

    Buat design program seperti gambar dibawah ini Komponen yang digunakan 2 buath TextBox 1 Buah…

  • Menghitung Jumlah Kata Dalam Kalimat Dengan PHP

    Kali ini kita akan membuat script untuk menghitung jumlah kata dalam kalimat dengan script PHP.…

  • Menghitung Usia/Umur dengan Delphi

    Buat design aplikasinya seperti gambar dibawah ini 2 buah TLabel 1 buah TButton 1 buah…

  • Membuat Kalender dengan PHP

    Buat sebuah file dengan nama kalender.php lalu tambahkan script dibawah ini Minggu Senin Selasa Rabu…

Filed Under: PHP

Reader Interactions

Leave a Reply Cancel reply

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

Primary Sidebar

Pencarian

Tanya Jawab tentang DevOps SRE CPE, gabung di https://t.me/devopsindonesia

Terbaru

  • Cara Mengganti Port Screen Sharing macOS
  • Cara Menonaktifkan Pager di macOS
  • Cara Mengupdate Nama Apple silicon-as-a-Service Scaleway
  • Cara Force Delete Namespace di Kubernetes
  • Install PHP MariaDB di Mac Monterey

Komentar

  • mazda on Tutorial Lengkap Install Mail Server Postfix Dovecot MariaDB di CentOS 7
  • adi on Menggunakan Mikrotik Sebagai SSH Client
  • aris u on Solusi Simple Queue Mikrotik Tidak Berjalan
  • Bowo on Cara Mematikan SSID Molecool Balifiber
  • aris on Solusi Simple Queue Mikrotik Tidak Berjalan

Tulisan Populer

  • Password Router Huawei HG8245H5 Indihome 1.2m views
  • Password Terbaru ZTE F609 Indihome 784.5k views
  • Password Superadmin Huawei HG8245A 318.2k views
  • Cara Setting Manual Modem GPON ZTE F609 Indihome 273k views
  • Cara Setting Wireless ZTE F609 Indihome 257.1k views
  • Mengaktifkan Port LAN di Huawei HG8245 Indihome 169.8k views
  • Akses UseeTV Indihome via Wireless ZTE F609 156.8k views
  • Kemana Menghilangnya Saldo BCA 50 ribu 153.1k views
  • Cara Reset Password ZTE F609 Indihome 147.5k views
  • Cara Setting DHCP Server Modem/Router ZTE F609 113.5k views

Kategori

  • Delphi
  • dll
  • Gambas
  • Internet
  • Java
  • Lazarus
  • Linux
  • PHP
  • Review
  • Teknologi

Sponsor

kadal.id
carakami.com
kuotabisa.com
Untuk jadi sponsor, hubungi kita lewat halaman sponsor
© 2021. Jaranguda
  • Linux
  • PHP
  • Internet
  • Teknologi
  • Delphi
  • Gambas
  • Java