PHP Tarih ve Zaman

PHP date() fonksiyonu, tarih veya zamanı formatlamak için kullanılır.

PHP Date() fonksiyonu

PHP Date() fonksiyonu, zaman damgasını daha okunabilir bir tarih ve zaman formatına dönüştürür.

Sözdizimi

date(format,timestamp)
Parametre Açıklama
format Zorunludur. Zaman damgasının formatını belirtir.
timestamp Opsiyonel. Zaman damgasını belirtir. Varsayılan, mevcut zaman ve tarihtir.

Açıklama:Zaman damgası, belirli bir olayın tarih ve saatini temsil eden bir karakter dizisidir.

Basit tarih almak

date() fonksiyonunun format parametreleri zorunludur ve tarih veya zamanı nasıl formatlanacağını belirler.

Tarih için sıkça kullanılan bazı karakterler aşağıda verilmiştir:

  • d - Ayın gününü (01-31) belirtir
  • m - Ayı (01-12) belirtir
  • Y - Yılı (dört haneli) belirtir
  • 1 - Haftanın gününü belirtir

Diğer karakterler, örneğin "/", "." veya "-" de karakterler içinde eklenebilir ve diğer formatları artırmak için kullanılabilir.

Aşağıdaki örnek, bugünkü tarihi üç farklı yöntemle formatlamayı gösterir:

Örnek

<?php
echo "Bugün " . date("Y/m/d") . "<br>";
echo "Bugün " . date("Y.m.d") . "<br>";
echo "Bugün " . date("Y-m-d") . "<br>";
echo "Bugün " . date("l");
?>

Çalışma Örneği

PHP Uyarısı - Otomatik copyright yıl

date() fonksiyonu ile web sitenizde otomatik olarak sürüm yılı güncellemesi yapın:

Örnek

© 2010-<?php echo date("Y")?>

Çalışma Örneği

Basit zaman al

Zaman için sıkça kullanılan karakterler şunlardır:

  • h - Baş harfi sıfır olan 12 saatlik saat formatı
  • i - Baş harfi sıfır olan dakika
  • s - Baş harfi sıfır olan saniye (00-59)
  • a - Küçük harf öğleden önce ve öğleden sonra (am veya pm)

Aşağıdaki örnek, belirtilen formatta mevcut zamanı çıktılar:

Örnek

<?php
echo "Şu anki zaman: " . date("h:i:sa");
?>

Çalışma Örneği

Açıklama:Lütfen PHP date() fonksiyonunun sunucunun mevcut tarihini/datetime'ini döndüğünü unutmayın!

Zaman dilimi al

Eğer kodunuzdan doğru zaman dönmezse, sunucunuzun diğer bir ülkede yerleştirilmiş veya farklı bir zaman dilimine ayarlanmış olabileceği olasıdır.

Bu yüzden, belirli bir konum bazlı doğru zaman gerekiyorsa, kullanmak istediğiniz zaman dilimini ayarlayabilirsiniz.

Aşağıdaki örnek, "Asia/Shanghai" zaman dilimini ayarlar ve belirtilen formatta mevcut zamanı çıktılar:

Örnek

<?php
date_default_timezone_set("Asia/Shanghai");
echo "Şu anki zaman: " . date("h:i:sa");
?>

Çalışma Örneği

PHP mktime() ile tarih oluşturma

date() fonksiyonunda seçmeli zaman damgası parametresi, zaman damgasını belirtir. Zaman damgası belirtilmemişse, mevcut tarih ve zaman kullanılır (yukarıdaki örnekte olduğu gibi).

mktime() fonksiyonu, tarih için Unix zaman damgası döndürür. Unix zaman damgası, Unix epochu (1970 yılının 1 Ocakı 00:00:00 GMT) ile belirtilen zaman arasındaki saniye sayısını içerir.

Sözdizimi

mktime(hour,minute,second,month,day,year)

Aşağıdaki örnek, mktime() fonksiyonunun bir dizi parametresini kullanarak tarih ve zaman oluşturur:

Örnek

<?php
$d=mktime(9, 12, 31, 6, 10, 2015);
echo "Tarih oluşturma: " . date("Y-m-d h:i:sa", $d);
?>

Çalışma Örneği

PHP strtotime() ile dize kullanarak tarih oluşturma

PHP strtotime() fonksiyonu, insan okunabilir dizesini Unix zamanına dönüştürmek için kullanılır.

Sözdizimi

strtotime(time,now)

Aşağıdaki örnek, strtotime() fonksiyonu ile tarih ve zaman oluşturur:

Örnek

<?php
$d=strtotime("10:38pm April 15 2015");
echo "Tarih oluşturma: " . date("Y-m-d h:i:sa", $d);
?>

Çalışma Örneği

PHP, dizesi tarihine dönüştürme konusunda çok akıllıdır, bu yüzden çeşitli değerleri kullanabilirsiniz:

Örnek

<?php
$d=strtotime("tomorrow");
echo date("Y-m-d h:i:sa", $d) . "<br>";
$d=strtotime("next Saturday");
echo date("Y-m-d h:i:sa", $d) . "<br>";
$d=strtotime("+3 Months");
echo date("Y-m-d h:i:sa", $d) . "<br>";
?>

Çalışma Örneği

Ancak, strtotime() mükemmel değildir, bu yüzden içindeki dizesi kontrol etmeyi unutmayın.

Daha Fazla Tarih Örneği

Aşağıdaki örnek önümüzdeki Cumartesi'nin tarihini çıktırır:

Örnek

<?php
$startdate = strtotime("Saturday");
$enddate = strtotime("+6 weeks",$startdate);
while ($startdate < $enddate) {
  echo date("M d", $startdate),"<br>";
  $startdate = strtotime("+1 week", $startdate);
}
?>

Çalışma Örneği

Aşağıdaki örnek Temmuz 4'ünden önceki günleri çıktırır:

Örnek

<?php
$d1=strtotime("December 31");
$d2=ceil(($d1-time())/60/60/24);
echo "Aralık 31'e kalan gün: " . $d2 ." gün.";
?>

Çalışma Örneği

Tam PHP Tarih Referans Kılavuzu

Tüm tarih fonksiyonlarının tam kılavuzuna ihtiyacınız varsa, sitemizi ziyaret edin: PHP Tarih Referans Kılavuzu.

Bu kılavuz her fonksiyonun kısa bir açıklamasını ve kullanım örneğini içerir.