Menghitung Selisih Waktu Dengan PHP

  • Menghitung Selisih Waktu Dengan PHP

Menghitung Selisih Waktu Dengan PHP

Menghitung Selisih Waktu Dengan PHP  – Pada kesempatan kali ini kita akan membahas bagaimana cara menghitung selisih waktu dengan PHP.

Pada PHP, terdapat banyak cara untuk menghitung selisih tanggal dan waktu, kali ini kita akan membahas beberapa cara mulai dari yang paling mudah hingga yang paling rumit.

I. Menghitung Selisih Waktu Dengan PHP – Dengan Fungsi date_diff – Cara Paling Mudah

Cara termudah menghitung selisih waktu dengan PHP adalah menggunakan fungsi date_diff(), fungsi ini mulai ada pada PHP versi 5.3.0. adapun format penulisannya adalah:

Penjelasan:

Argumen, yaitu $datetime1 dan $datetime2 harus berupa objek DateInterval, objek ini dibuat menggunakan fungsi date_create()
Argumen tidak harus urut dari yang kecil, kita dapat membalik urutan dengan menempatkan tanggal besar di argumen pertama dan tanggal kecil di argumen kedua, hasilnya sama saja.
$diff = date_diff( $akhir, $awal );
Hasil dari fungsi date_diff() adalah objek DateInterval, yang memiliki berbagai property yang dapat digunakan untuk mengakses tanggal, misal property d yang bernilai jumlah selisih hari. Pada contoh diatas, untuk melihat semua property jalankan statemen echo <pre>; print_r($diff)
Format Output

Objek DateInterval dari fungsi date_diff() juga memiliki method format yang dapat digunakan untuk menghasilkan output dengan format tertentu, misal:

Penjelasan:

Agar karakter diterjemahkan menjadi waktu, maka awali dengan tanda persen (%) pada contoh diatas %Y dan %d
Tahun: Y untuk 4 digit tahun, dan y untuk 2 digit tahun.
Bulan: M untuk 2 digit bulan, dan m untuk 1 digit bulan.
Tanggal: D untuk 2 digit tanggal, dan d untuk 1 digit tanggal.
Hari: a untuk total beda waktu dalam hari. Misal:
$diff = date_diff( date_create(‘1988-08-10’), date_create() );
echo $diff->format(‘Usia anda adalah %a hari’); // Usia anda adalah 10389 hari.
Jam: H untuk 2 digit jam, dan h untuk 1 digit jam.
Menit: I untuk 2 digit menit, dan i untuk 1 digit menit.
Detik: S untuk 2 digit detik, dan s untuk 1 digit detik.
Fungsi untuk menghitung beda waktu

Setelah kita memahami cara termudah untuk menghitung selisih waktu, maka untuk lebih memudahkan lagi dengan tanpa menulis kode berulang kali, maka kode tersebut dapat kita letakkan dalam sebuah fungsi:

Contoh penggunaan:

II. Menghitung Selisih Waktu Dengan PHP – Dengan Objek DateTime

Jika sebelumnya kita menghitung beda waktu dengan model procedural style, yaitu menggunakan fungsi date_diff(), kali ini, kita akan menggunakan model Object Oriented dengan menggunakan objek DateTime.

Sama seperti fungsi date_diff(), objek DateTime mulai ada pada PHP versi 5.3.0

Sama seperti date_diff(), objek DateTime juga memiliki method format yang digunakan untuk menghasilkan format tertentu, disamping itu, karakter date yang digunakan juga sama:

Meskipun cara ini lebih ribet dibanding kedua cara sebelumnya, cara ini memiliki beberapa kelebihan, yaitu dapat menghitung selisih berdasarkan jam, menit, detik dengan lebih mudah,

contoh:

IV. Timezone

Ketika kita bekerja dengan tanggal, jangan lupa untuk selalu menyesuaikan timezone tau zona waktu. Karena pasti ada selisih ketika kita menghitung waktu sekarang.

Hal ini disebabkan secara default php akan menggunakan zona waktu Eropa atau Amerika dengan selisih waktu lebih dari 5 jam.

Untuk mengubah zona waktu dapat menggunakan fungsi date_default_timezone_set(), misal:

IV. Penutup

Setidaknya terdapat tiga cara menghitung selisih waktu pada php, yaitu menggunakan fungsi date_diff(), objek DateTime, dan fungsi strtotime()

Pertimbangkan untuk terlebih dahulu menggunakan fungsi date_diff() atau objek DateTime, karena keduanya jauh lebih mudah dibanding menggunakan fungsi strtotime().

Namun demikian, untuk kasus tertentu, lebih mudah menggunakan fungsi strtotime() dibanding kedua cara lainnya.

Demikian pembahasan mengenai cara menghitung selisih tanggal dan waktu pada PHP, semoga bermanfaat.

referensisi http://jagowebdev[dot]com/menghitung-selisih-waktu-dengan-php/

Related Posts
Comment ( 1 )
  1. Results 2018
    July 20, 2018 at 7:19 pm
    Reply

    Nice post

Leave a reply