PHP Tarih ile kolayca işlemler yapabileceğiniz güzel bir class. İlgili sınıf, verilen parametrelere göre tarih, tarih/saat formatındaki veriyi şekillendiriyor. Sınıf fonksiyonlarına ait örnekler:
kgDateTime.class.php dosyası içeriği:
Bunları test edebilmemiz için test.php dosyamız:
İyi çalışmalar.
* Anki tarih ve saat : 2008-06-29 19:10:35 * Anki tarih : 2008-06-29 * Anki saat : 19:10:35 * Ay ve gün isimleri ile : 28 Haziran 2008 Cumartesi * Gün ismi ile : 28.06.2008 Cumartesi * Ay ismi ile : 28 Haziran 2008 * Ay ve gün isimleri ve saat ile : 28 Haziran 2008 Cumartesi 20:15:37 * Ay ve gün isimleri ve saat ile saniye hariç : 28 Haziran 2008 Cumartesi 20:15 * Tarih dönüştür : 2008-06-28 11.58:47 * Tarih dönüştür : 29.06.2008 19:10:35 * Anki tarih ve saat dönüştür : 29.06.2008 19:10:35 * Tarih al : 2008-06-29 * Saat al : 19:10:35 * Saniye sil : 11:34 * Saniye sil : 16.11.2007 01:22 |
kgDateTime.class.php dosyası içeriği:
<?PHP class kgDateTime { var $months, $days = array(); var $distinct = null; var $date_time_now, $date_now, $time_now = null; function date_translate($date) { $date_parse1 = explode(' ', $date); if (strpos($date_parse1[0], '-') == true) { $date_parse2 = explode('-', $date_parse1[0]); $new_date = $date_parse2[2].'.'.$date_parse2[1].'.'.$date_parse2[0]; }else{ $date_parse2 = explode('.', $date_parse1[0]); $new_date = $date_parse2[2].'-'.$date_parse2[1].'-'.$date_parse2[0]; } if (isset($date_parse1[1])) { $new_date = $new_date.' '.$date_parse1[1]; } return $new_date; } function date_text($date, $month_text_visible, $day_text_visivle) {//// eksik if (strpos($date, ' ') == true) { $date_time_parse = explode(' ', $date); $date = $date_time_parse[0]; $time = ' '.$date_time_parse[1]; }else{ $time = null; } if (strpos($date, '-') == true) { $date_parse = explode('-', $date); $day = $date_parse[2]; $month = $date_parse[1]; $year = $date_parse[0]; }else{ $date_parse = explode('.', $date); $day = $date_parse[0]; $month = $date_parse[1]; $year = $date_parse[2]; } if ($month_text_visible == 1) { $month_var = ' '.$this -> months[$month].' '; }else{ $month_var = '.'.$month.'.'; } if ($day_text_visivle == 1) { $mk_date = date("Y-n-j-w", mktime(0, 0, 0, $month, $day, $year)); $mk_date_explode = explode('-', $mk_date); $day_var = ' '.$this -> days[$mk_date_explode[3]]; } return $day.$month_var.$year.$day_var.$time; } function date_time_slice($date, $type) { $date_parse = explode(' ', $date); if ($type == 0) { return $date_parse[0]; }elseif ($type == 1) { return $date_parse[1]; } } function second_delete($date_or_time) { if (strpos($date_or_time, ' ') == true) { $date_parse = explode(' ', $date_or_time); $time = $date_parse[1]; $new_date = $date_parse[0].' '; }else{ $time = $date_or_time; } $time_parse = explode(':', $time); return $new_date.$time_parse[0].':'.$time_parse[1]; } function date_time_set($distinct) { $this -> distinct = $distinct; $distinct_calculate = time() + 3600 * $this -> distinct; $this -> date_time_now = date('Y-m-d', $distinct_calculate).' '.date('H:i:s', $distinct_calculate); $this -> date_now = date('Y-m-d', $distinct_calculate); $this -> time_now = date('H:i:s', $distinct_calculate); $this -> months = array( '01' => 'Ocak', '02' => 'Şubat', '03' => 'Mart', '04' => 'Nisan', '05' => 'Mayıs', '06' => 'Haziran', '07' => 'Temmuz', '08' => 'Ağustos', '09' => 'Eylül', '10' => 'Ekim', '11' => 'Kasım', '12' => 'Aralık' ); $this -> days = array( 0 => 'Pazar', 1 => 'Pazartesi', 2 => 'Salı', 3 => 'Çarşamba', 4 => 'Perşembe', 5 => 'Cuma', 6 => 'Cumartesi' ); } } ?> |
<?PHP header('Content-Type: text/html; charset=utf-8'); require_once('kgDateTime.class.php'); $dt =& new kgDateTime(); $dt -> date_time_set(0); // Argüman : Saat Farkı (Örn: -4, 4, 0, 10 gibi) ///////////////////////////////////////////////////////////////////////////////// ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head profile="http://gmpg.org/xfn/11"> <title>kgDateTime Class v1.0 - Test</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <style type="text/css"> body { font:12px "Lucida Grande", "Lucida Sans Unicode", Tahoma, Verdana, Arial, Helvetica, sans-serif; color:#444; } h3 { margin:0 0 10px 10px; padding:5px 10px 5px 10px; background:#f2f2f2; border-bottom:1px solid #e0e0e0; font:18px "Lucida Grande", "Lucida Sans Unicode", Tahoma, Verdana, Arial, Helvetica, sans-serif; } ul { margin:0 0 0 20px; padding:0 0 0 10px; list-style-type:decimal; } ul li { margin:0; padding:0; line-height:20px; } span { font:bold 100% "Lucida Grande", "Lucida Sans Unicode", Tahoma, Verdana, Arial, Helvetica, sans-serif; color:#999; } </style> </head> <body> <h3>kgDateTime Class v1.0 - Test</h3> <ul> <li><span>Anki tarih ve saat : </span><?=$dt -> date_time_now; // Anki tarih ve saat ?></li> <li><span>Anki tarih : </span><?=$dt -> date_now; // Anki tarih ?></li> <li><span>Anki saat : </span><?=$dt -> time_now; // Anki saat ?></li> <li><span>Ay ve gün isimleri ile : </span><?=$dt -> date_text('2008-06-28', 1, 1); // 1. argüman : tarih, 2. argüman : 0 ise yazı ay değeri sayı, 1 ise text formatında, 3. argüman : 0 ise yazı gün değeri sayı, 1 ise text formatında ?></li> <li><span>Gün ismi ile : </span><?=$dt -> date_text('2008-06-28', 0, 1); // 1. argüman : tarih, 2. argüman : 0 ise yazı ay değeri sayı, 1 ise text formatında, 3. argüman : 0 ise yazı gün değeri sayı, 1 ise text formatında?></li> <li><span>Ay ismi ile : </span><?=$dt -> date_text('28.06.2008', 1, 0); // 1. argüman : tarih, 2. argüman : 0 ise yazı ay değeri sayı, 1 ise text formatında, 3. argüman : 0 ise yazı gün değeri sayı, 1 ise text formatında?></li> <li><span>Ay ve gün isimleri ve saat ile : </span><?=$dt -> date_text('28.06.2008 20:15:37', 1, 1); // 1. argüman : tarih, 2. argüman : 0 ise yazı ay değeri sayı, 1 ise text formatında, 3. argüman : 0 ise yazı gün değeri sayı, 1 ise text formatında ?></li> <li><span>Ay ve gün isimleri ve saat ile saniye hariç : </span><?=$dt -> date_text($dt -> second_delete('28.06.2008 20:15:37'), 1, 1); // 1. argüman : tarih, 2. argüman : 0 ise yazı ay değeri sayı, 1 ise text formatında, 3. argüman : 0 ise yazı gün değeri sayı, 1 ise text formatında ?></li> <li><span>Tarih dönüştür : </span><?=$dt -> date_translate('28.06.2008 11.58:47');?></li> <li><span>Tarih dönüştür : </span><?=$dt -> date_translate($dt -> date_time_now); // Tarih formatını değiştirir ?></li> <li><span>Anki tarih ve saat dönüştür : </span><?=$dt -> date_translate($dt -> date_time_now);?></li> <li><span>Tarih al : </span><?=$dt -> date_time_slice($dt -> date_time_now, 0); // Tarih ve saati böler. 2. argüman : 0 ise tarihi, 1 ise saati verir ?></li> <li><span>Saat al : </span><?=$dt -> date_time_slice($dt -> date_time_now, 1); // Tarih ve saati böler. 2. argüman : 0 ise tarihi, 1 ise saati verir ?></li> <li><span>Saniye sil : </span><?=$dt -> second_delete('11:34:52'); // Saatten saniyeyi siler ?></li> <li><span>Saniye sil : </span><?=$dt -> second_delete('16.11.2007 01:22:34'); // Saatten saniyeyi siler ?></li> </ul> </body> </html> |
İyi çalışmalar.
0 yorum:
Yorum Gönder