CodeBlanks Logo Icon CodeBlanks

time() ile zaman damgası

PHP kursu · Orta seviye · Ders 106/115

time() ile Unix zaman damgasını almayı ve kullanmayı öğrenirsin.

time() ve Unix zaman damgası

PHP'de time() fonksiyonu o anki zamanı bir Unix zaman damgası olarak verir. Bu damga, 1 Ocak 1970 00:00:00 UTC'ten bu yana geçen saniye sayısıdır ve bir tamsayıdır.

Örnek: $now = time(); çağrısı $now değişkenine 1700000000 gibi büyük bir tamsayı atar. Bu sayıyı date()'e ikinci parametre olarak geçirirsen tarihi yazdırabilirsin.

Zaman damgaları tarih hesaplamalarının temelidir; saniye cinsinden oldukları için toplama ve çıkarma kolaydır.

Zaman damgasıyla aritmetik

Zaman damgaları saniye cinsinden olduğundan tarih aritmetiği kolaydır. Bir gün 60 * 60 * 24 = 86400 saniyedir; bir saat 3600, bir dakika 60 saniyedir.

Yarının zaman damgasını almak için $tomorrow = time() + 86400; yazabilirsin. Bir hafta sonrası için time() + 7 * 86400 kullanırsın.

Sonucu date('Y-m-d', $tomorrow) ile okunabilir biçimde yazdırırsın. Kısa hesaplar için bu yöntem pratiktir; karmaşık işlemlerde DateTime sınıfı daha güvenlidir.

Uygulama Bir hafta sonraki tarihi hesapla

Verilen $now = 1700000000 zaman damgasından bir hafta (7 gün) sonrasını hesapla: $nextWeek = $now + 7 * 24 * 60 * 60;. Sonra date('Y-m-d', $nextWeek) ile ekrana yazdır.

Örnek çözümü göster
$nextWeek = $now + 7 * 24 * 60 * 60; ile hesapla, sonra echo date('Y-m-d', $nextWeek); yaz.
Örnek çözüm:
<?php
date_default_timezone_set('UTC');
$now = 1700000000;

$nextWeek = $now + 7 * 24 * 60 * 60;
echo date('Y-m-d', $nextWeek);

Kendini test et

  1. time() fonksiyonu ne döndürür?

    • 1 Ocak 1970'ten bu yana geçen saniye sayısını (tamsayı)
    • Bugünün tarihini 'Y-m-d' biçiminde dize olarak
    • Mikrosaniye hassasiyetinde ondalıklı sayıyı
    • Saat dilimi adını (örn. UTC)
    Cevabı göster

    1 Ocak 1970'ten bu yana geçen saniye sayısını (tamsayı) — Doğru. time() Unix zaman damgasını (saniye cinsinden tamsayı) döndürür.

  2. Bir günün saniye sayısını hesapla

    $day_in_seconds = 60 * 60 * ____;
    Cevabı göster
    $day_in_seconds = 60 * 60 * 24;
  3. Zaman birimlerini eşleştir

    60 saniye
    1 dakika
    3600 saniye
    1 saat
    86400 saniye
    1 gün
    time()
    Şimdiki zaman damgası

Orta seviye bölümündeki tüm dersler