Bir tarih Hesaplama

3 Cevap php

Ben MySQL içine koymak için bir zaman damgası yapmak gerekir. Kullanıcı Ben bugünün tarihine kadar birçok hafta eklemeniz gerekir (hafta) bir dizi sunulması. Ne yapmaya çalışıyorum kullanıcı göndererek bir reklamın bir bitiş tarihini hesaplamak olduğunu.

Bunun nasıl herhangi bir öneriniz? Teşekkürler!

3 Cevap

Sen damgası oluşturmak için strtotime to add time to a date - it takes a second argument that is the current time if none is passed. You can then pass that created time to the date işlevini kullanabilirsiniz:

$timestamp = date('Y-m-d H:i:s', strtotime('+10 weeks'));

Ben date_add (CURDATE (), ARALIK 2. HAFTA) Örneğin, geçerli tarih 2 weekss eklersiniz düşünüyorum

Sadece eklemek için, bazı veritabanında bir düz-eski int alanı olarak UNIX zaman depolama daha esnek ve taşınabilir bir çözüm olduğunu söyleyebilirim. Onlar sadece basit tamsayıları saklamak içerir çünkü Ayrıca, ekler ve güncellemeleri daha hızlı olur. Gerçekten need veritabanı düzeyinde yapmak için ne kadar tarih işleme bağlıdır. Ben taşınabilirlik için gitmek ve PHP tüm tarih hesaplamaları yapmak eğilimindedir. Geçerli damgası saklamak için, ben sadece bir tamsayı sütun çıkış içine eklersiniz:

strtotime('now');

veya

time();

Her iki akım (unix) damgası iade edilmektedir. Tarih karşılaştırma sonra veritabanından damgaları getiriliyor ve gibi önemsiz basit bir aritmetik işlemi gerçekleştirerek yapılabilir:

if($tsFromDb > strtotime('+28 days')) {
   echo 'it is the future, zombies!';
}

Gerçekten sizin için tarihleri ​​kullanarak konum ne bağlıdır.