PHP - Tarihi karşılaştır

5 Cevap php

Ben şu var

$var = "2010-01-21 00:00:00.0"

Ben (yani ben bu $ var bugün önce veya eşittir, bugün ya da bilmek istiyorum) Bugünün tarihine karşı bu tarihi karşılaştırmak istiyorum

Ben kullanmak için ne fonksiyon gerekir?

5 Cevap

strtotime($var);

Bir zaman değerinin dönüşüyor

time() - strtotime($var);

Size saniye verir beri $var

if((time()-(60*60*24)) < strtotime($var))

$var son gün içinde olmuştur olmadığını kontrol edecek.

Bu format bir standart string karşılaştırma örneğin mükemmel için uygun

if (date1 > date2)

O format güzelliği: o güzel emreder. Tabii ki, may kesin koşullara bağlı olarak, daha az verimli olabilir, ama aynı zamanda bir sürü daha uygun ve daha rahat kod neden olabilir - biz gerçekten bu kararı vermek için daha fazla bilmek gerekir ediyorum diyoruz.

Buyrun:

function isToday($time) // midnight second
{
    return (strtotime($time) === strtotime('today'));
}

isToday('2010-01-22 00:00:00.0'); // true

Ayrıca, biraz daha yardımcı işlevler:

function isPast($time)
{
    return (strtotime($time) < time());
}

function isFuture($time)
{
    return (strtotime($time) > time());
}

Bobby Jack, DateTime nesne kullanımını tamamlamak için php varsa 5.2.2 +:

if(new DateTime() > new DateTime($var){
    // $var is before today so use it
}

Bir diğer yararlı örnek basit bir PHP sınıfı olabilir.

Bu, pek çok yöntem hem de karşılaştırma fonksiyonları sağlar.

örneğin:

$date = new simpleDate();
echo $date->now()->compare('2010-01-21 00:00:00')->isBefore();

Öğreticiler sayfasında birçok örnekleri vardır. Please click here.