»

Kamis, 11 April 2013

Soal PHP - Mengurutkan Selisih dari Dua Tanggal yang di Input

Soal PHP- Mengurutkan Selisih dari Dua Tanggal yang di Input

Misal :
INPUT:
format tanggal : (dd/mm/yyyy)
input1 = 29/09/2012
input2 = 06/04/2012

PROSES:
Bagaimana mengurutkan selisih kedua tanggal tersebut??

OUTPUT:
format tanggal : (mmyyyy)
092012
102012
112012
122012
012013
022013
032013
042013
Codingnya :
<?php
$tanggal1 = "29-09-2012";
$tanggal2 = "06-04-2012";
list($hari_awal, $bln_awal1, $thn_awal) = split('[-]', $tanggal1);
list($hari_awal, $bln_akhir, $thn_akhir) = split('[-]', $tanggal2);


if($bln_awal1<10){
list($nol, $bukannol,) = split('[0]', $bln_awal1);
$bln_awal = $bukannol;
}
else{
$bln_awal = $bln_awal1;
}


if($thn_awal == $thn_akhir){
for($b=$bln_awal; $b<=$bln_akhir; $b++){
if($b<10){
$periode = $thn_awal."0".$b;
echo $periode."<br>";
}
if($b>=10){
$periode = $thn_awal."".$b;
echo $periode."<br>";
}
}
}else{
for($t=$thn_awal; $t<=$thn_awal; $t++){
for($b=$bln_awal; $b<=12; $b++){
if($b<10){
$periode = $t."0".$b;
echo $periode."<br>";
}
if($b>=10){
$periode = $t."".$b;
echo $periode."<br>";
}
}
}

for($t=($thn_awal+1); $t<=($thn_akhir-1); $t++){
for($b=01; $b<=12; $b++){
if($b<10){
$periode = $t."0".$b;
echo $periode."<br>";
}
if($b>=10){
$periode = $t."".$b;
echo $periode."<br>";
}
}
}

for($t=$thn_akhir; $t<=$thn_akhir; $t++){
for($b=01; $b<=$bln_akhir; $b++){
if($b<10){
$periode = $t."0".$b;
echo $periode."<br>";
}
if($b>=10){
echo $t."".$b."<br>";
}
}
}
}
?>
Silahkan dicoba.. Semoga bermanfaat :)