1/26/17

Mencari selisih tanggal di PHP

Hello sahabat sahabat coder, kali ini saya ingin membagikan cara bagaimana mencari selisih dari dua tanggal di dalam php
Langsung saja : buatlah dua buah variable tanggal seperti berikut :

$tanggal1	= “2017-01-13”;
$tanggal2	= “2017-03-30”;

Perlu diperhatikan bahwa penulisan tanggal adalah tahun-bulan-tanggal, jangan sampai kebalik yaa.
Selanjutnya kedua variable tanggal tersebut diconvert menjadi format tanggal, karena kedua variable tersebut masih mempunyai format string :

$convert_tanggal1 	= date_create($tanggal1);
$convert_tanggal2 	= date_create($tanggal2);


Sekarang kita sudah mempunyai dua buah variable dengan format date, yaitu variable $convert_tanggal1 dan $convert_tanggal2.

Langkah selanjutnya kita mencari selisih kedua buah tanggal tersebut, ingat bahwa yang dicari selisihnya adalah variable yang sudah benbentuk format date yang sudah kita convert sebelumnya. Langsung saja ikuti langkah berikutnya.
$selisih 	= date_diff($convert_tanggal1,  $convert_tanggal2);

Function date_diff() di atas merupakan function untuk mecari selisih Antara variable $convert_tanggal1 dan $convert_tanggal2. Dan sekarang kita sudah mendapatkan selisih Antara kedua tanggal tersebut dan disimpan ke dalam variable $selisih.

Dan langkah selanjutnya adalah mendapatkan total hari dari selisih kedua tanggal tersebut dengan perintah berikut :
$total_hari 	=  $selisih->format('%a');
Nah, sekarang kita sudah mendapatkan total selisi  hari dari kedua buah tanggal yang sudah kita deklarasikan sebelumnya. Maka dari kedua tanggal diatas  “2017-01-13” dan  “2017-03-30” akan menghasilkan total selisih 76 hari;


Tambahan untuk mencari selisih bulan, dan hari setelah dipotong bulan(bukan total hari)
$bulan 		= $selisih->format('%m');
$hari 		= $selisih->format('%d');

Jadi selisih variable bulan akan menghasilkan 2  dan $hari menghasilkan 17. Jadi selisih Antara kedua tanggal di atas adalah 2 bulan 17 hari.
di bawah ini contoh secara lengkap :

$tanggal1   		= "2017-01-13";
$tanggal2   		= "2017-03-30";

$convert_tanggal1   = date_create($tanggal1);
$convert_tanggal2   = date_create($tanggal2);

$selisih    		= date_diff($convert_tanggal1,  $convert_tanggal2);

$total_hari     	=  $selisih->format('%a');
$bulan      		= $selisih->format('%m');
$hari       		= $selisih->format('%d');

echo "selisih hari antara tanggal ".$tanggal1."  dan tanggal ".$tanggal2." adalah ".$total_hari." hari
";

echo "selisih bulan adalah : ".$bulan." bulan ".$hari." hari";


Maka hasil di browser akan seperti ini :



Sekian sharing kali ini semoga bermanfaat dan selamat mencoba salam coder.

No comments:

Post a Comment