PHP'de zaman yönetimi date(), time(), strtotime() ve DateTime gibi fonksiyonlarla gerçekleştirilir. Bu makalede, bu fonksiyonların pratik kullanım örneklerini ve farklı senaryolardaki yerlerini ele alacağız.
PHP'nin date() fonksiyonu, geçerli tarih ve saat bilgisini istenilen biçimde döndürmek için kullanılır. Format stringleri ile yıl, ay, gün, saat, dakika, saniye gibi bileşenler kolaylıkla özelleştirilebilir.
echo date('Y-m-d'); // 2025-06-08 (Yıl-Ay-Gün)
echo date('d.m.Y H:i:s'); // 08.06.2025 15:12:45 (Gün.Ay.Yıl Saat:Dakika:Saniye)
time()
fonksiyonu, Unix zaman damgasını (timestamp) döner. Bu değer, 1 Ocak 1970'ten itibaren geçen saniyeyi temsil eder. Veritabanına zaman kaydı yapmak veya zaman karşılaştırmaları için sıkça kullanılır.
echo time(); // Örnek çıktı: 1717857160
Metinsel tarih ifadelerini Unix zaman damgasına dönüştürür. Doğal dil ifadeleriyle çalışabilir: "+1 day", "last week", "next Monday" gibi.
echo date('Y-m-d', strtotime('tomorrow'));
echo date('Y-m-d', strtotime('+1 week'));
echo date('Y-m-d', strtotime('last Sunday'));
Belirli saat, gün, ay ve yıl bilgisi girilerek özel bir tarih oluşturmak için kullanılır. Zaman kontrolü ve özel tarih üretimleri için kullanışlıdır.
$tarih = mktime(0, 0, 0, 12, 31, 2025);
echo date('Y-m-d', $tarih); // 2025-12-31
Geçerli tarih/saatin tüm parçalarını detaylı olarak dizi şeklinde döner. Bu dizi içerisinde yıl, ay, gün, saat, dakika gibi bilgiler ayrı ayrı yer alır.
print_r(getdate());
PHP'de varsayılan saat dilimini ayarlamak için kullanılır. Saat farklılıklarını önlemek ve doğru saat verisi göstermek için önemlidir.
date_default_timezone_set('Europe/Istanbul');
echo date('H:i:s'); // Türkiye saati
strtotime()
ile zaman üzerinde ileri/geri oynamalar yapılabilir. Böylece dinamik tarihler hesaplanabilir.
echo date('Y-m-d', strtotime('+5 days')); // Şimdiki tarihten 5 gün sonrası
echo date('Y-m-d', strtotime('-2 months')); // Şimdiki tarihten 2 ay öncesi
DateTime
sınıfı, iki tarih arasında fark bulmak için ideal bir yapıdır. Aradaki gün, ay, yıl gibi farkları hesaplamanı sağlar.
$t1 = new DateTime('2025-06-01');
$t2 = new DateTime('2025-06-08');
$diff = $t1->diff($t2);
echo $diff->days . ' gün fark var.'; // 7 gün
Elindeki bir timestamp değerini, date()
fonksiyonuyla okunabilir bir biçime çevirebilirsin.
$timestamp = 1717856100;
echo date('d.m.Y H:i', $timestamp);
PHP'nin date('w') fonksiyonu 0–6 arası bir sayı döner (Pazar 0). Bu değeri bir diziyle eşleştirerek Türkçe gün ismini elde edebilirsin.
$gunler = ['Pazar','Pazartesi','Salı','Çarşamba','Perşembe','Cuma','Cumartesi'];
echo $gunler[date('w')];
başarılı!
0 0 YanıtlaToplam 33 Makale
Lütfen yorumlarınızda saygılı, yapıcı ve anlaşılır bir dil kullanın.
Küfür, hakaret ya da spam içerikler onaylanmaz.