Ni ada sharing dariku...
Moga bisa bermanfaat....
Sharing kali ini adalah membuat class untuk merubah format tanggal. Misal ingin merubah dari tanggal 12/02/2011 menjadi 2011/02/12 atau jadi 12 Februari 2011...
Langsung saja, ini code-nya (kalo masih ada kekurangan, tolong diperbaiki ya. Biar saling melengkapi.. hehe)
//author : Zawaruddin class MZA_Date{ public $separator; public $format = array(); function change_format_date($date, $format_date, $new_format_date){ $format_date = str_split($format_date); $this->split_date($format_date); $format_date = $this->format; $date = explode($this->separator,$date); $this->format = array(); $new_format_date = str_split($new_format_date); $this->split_date($new_format_date); $new_format_date = $this->format; for($i=0;$i<count($new_format_date);$i++){ for($j=0;$j<count($format_date);$j++){ if(strcasecmp($format_date[$j],$new_format_date[$i]) == 0){ $new_date[$i] = $this->check_format($date[$j],$new_format_date[$i]); } } } return $new_date[0].$this->separator.$new_date[1].$this->separator.$new_date[2]; } function check_format($date, $format_date){ switch ($format_date){ case 'y' : $date = substr($date,-2);break; case 'M' : $date = $this->month_picker($date); break; case 'm' : $date = $this->month_picker($date); break; } return $date; } function month_picker($month){ $array_month = array(0 => "Januari", 1 => "Februari", 2 => "Maret", 3 => "April", 4 => "Mei", 5 => "Juni", 6 => "Juli", 7 => "Agustus", 8 => "September", 9 => "Oktober", 10 => "November", 11 => "Desember"); if(is_int($month)){ $month = intval($month); return $array_month[$month-1]; }else{ return array_search($month, $array_month)+1; } } function split_date($format_date){ for($i=0;$i<count($format_date);$i++){ if(ctype_alpha($format_date[$i])){ array_push($this->format,$format_date[$i]); }else{ $this->separator = $format_date[$i]; } } } }
change_format_date($date, $format_date, $new_format_date)
$date : tanggal yang mau di ganti
$format_date : format dari $date, jika $date = "13/02/2011" maka $format_date HARUS "d/m/Y"
$new_format_date : format tanggal yg baru
Format tanggal yg disediakan
Y : seperti tahun "2011" y : seperti tahun "11", dua digit di depan dihilangkan M : seperti bulan "Februari" m : seperti bulan "02" atau "2" d : seperti tanggal "17"
Contoh pengggunaan
$DATE = new MZA_Date(); $date = date("d m Y"); $format = "d m Y"; $new_format = "d M Y"; $date = $DATE->change_format_date($date, $format, $new_format);
Berbagi ilmu itu indah...
Apabila masih terdapat kekurangan mohon d evaluasi juga ya... thank's ^_^