PHP Tarihe Gün Ekleme Tarihten Gün Çıkarma
PHP projelerimizde tarih bilgisini sıkça kullanırız. Bazı durumlarda mevcut tarihimizden ileri yada geri giderek değişik tarihler elde etmemiz gerekir. Bu dersimizde elimizde bulunan bir tarihe gün ekleme ve gün çıkarma işlemlerine göz atacağız.
Bu dersimizde PHP ile tarih işlemlerinin minik bir özetine değinecek olsakta Sıfırdan İleri Seviyeye PHP 7 kitabımda bol örnekli PHP ile Tarih işlemleri bölümü bulunmaktadır.
PHP ile Tarihe Gün Ekleme
Öncelikle işlem yapacağımız bir tarih elde etmemiz gerekiyor. Projelerinizde bu bilgiyi veritabanında tuttuğunuz ilgili tablodan elde edebilirsiniz. Bunun yerine biz date() fonksiyonundan yararlanarak günün tarih bilgisini elde ediyoruz.
<?php $nowDate = date("Y-m-d"); echo $nowDate;
Elde ettiğimiz tarih bilgisini ekrana yazdırmaya çalıştığımızda Warning: date(): It is not safe to rely on the system’s timezone settings. ile başlayıp devam eden bir hata alırsanız bu hatanın sebebi ilgili zaman bölge formatının tanımlı olmamasından kaynaklıdır.
Önemli!
Kodumuzu şu şekilde güncellediğimiz de problem çözülecektir.
<?php date_default_timezone_set('Europe/Istanbul'); $nowDate = date("Y-m-d"); echo $nowDate;
Artık elde ettiğimiz tarih bilgisini ekrana yazdırabildik. Şimdi sıra ilgili tarihe ekleme yapmaya geldi.
Tarihe gün ekleme işlemini strtotime() fonksiyonu ile fonksiyonun arttırma parametrelerini kullanarak kolay bir şekilde gerçekleştirebiliriz. Bu işlem sonucunda elde edeceğimiz sonuç unix zaman damgası şeklinde saniye cinsinden değer olacaktır. Aşağıda ki işlem sonucunda $newDate değişkenini ekrana yazdırdığınız da çıkan sonucu kontrol edebilirsiniz.
$newDate = strtotime('1 day',strtotime($nowDate));
Saniye cinsinden elde ettiğimiz değeri yine date() fonksiyonuna ikinci parametre vererek istediğimiz tarih formatına dönüştürebiliriz.
$newDate = date('Y-m-d' ,$newDate );
Artık saniye cinsinden arttırarak elde ettiğimiz değer bizim belirlediğimiz formatta bir tarih’e dönüştü.
Aşağıda elde edilen bir tarihe 1 gün eklediğimiz tüm işlem yapısını gösteren kodu inceleyebilirsiniz
<?php date_default_timezone_set('Europe/Istanbul'); $nowDate = date("Y-m-d"); echo "Günün Tarihi....:".$nowDate; echo "<br/>"; $newDate = strtotime('1 day',strtotime($nowDate)); echo "Arttırılmış Zaman Damgası....:".$nowDate; echo "<br/>"; $newDate = date('Y-m-d' ,$newDate ); echo "Arttırılan Yeni Tarih....:".$newDate; ?>
PHP ile Tarihten Gün Çıkarma
PHP ile tarihe gün ekleme işlemlerinde uzun bir anlatım oldu. Ama PHP ile tarihten gün çıkarma işlemlerinde basit bir değişiklik yaparak aynı kod yapısını kullanacağız.
PHP ile gün çıkarma işlemi yapmanız için tek yapmanız gereken strtotime fonksiyonuna artış değer parametresi olarak verdiğimiz “1 day” bilgisini “-1 day” olarak değiştirmek olacaktır.
<?php date_default_timezone_set('Europe/Istanbul'); $nowDate = date("Y-m-d"); echo "Günün Tarihi....:".$nowDate; echo "<br/>"; $newDate = strtotime('-1 day',strtotime($nowDate)); echo "Arttırılmış Zaman Damgası....:".$nowDate; echo "<br/>"; $newDate = date('Y-m-d' ,$newDate ); echo "Arttırılan Yeni Tarih....:".$newDate; ?>
Ücretsiz kurs ister misin kaydol!
İstanbul Üniversitesi Yönetim Bilişim Sistemleri Yüksek Lisans derecem ve kamu sektöründeki tecrübemle profesyonel kariyerime Yazılım Yöneticisi olarak devam ediyorum. Edindiğim bilgi birikimi ve deneyimlerimi, yazılım ve teknoloji alanında kendini geliştirmek isteyenlere rehberlik etmek amacıyla paylaşıyorum.
Bu kanalda, sıfırdan ileri seviyeye kadar kapsamlı ve pratik odaklı yazılım dersleri bulabilir, kariyer yolculuğunuzda bir adım öne geçebilirsiniz. Eğer yazılım dünyasında kendinize sağlam bir yer edinmek istiyorsanız, doğru yerdesiniz.
Haydi, öğrenmeye ve birlikte büyümeye başlayalım!
Teşekkürler faydalı bir paylaşım.