2014-02-24 71 views
0

我正在爲學校做作業,如果我在某天添加折扣,我會獲得獎勵分數。我有一個積極的更新時間,使用日期函數(這是一個函數?),但我不知道如何去做這個if語句。如果聲明與日期

這裏是我的代碼:

<?php 
    $t = time(); 
    echo "Date of Purchase: " . (date("Y-m-d", $t)); 

    if(date == "20140224") { 
     echo $b; 
     echo "It works!"; 
    } 
?> 

很顯然,我只是提供相關的代碼。任何幫助表示讚賞!

回答

5

使用DateTime()爲datetime對象具有可比性:

$today = new DateTime(); 
$discountDate = new DateTime('2014-02-24'); 
if ($today == $discountDate) { 
    // today is discount day! 
} 

提示:無需使用time()到第二個參數傳遞給date()。當沒有第二個參數通過時,date()始終假定爲「現在」

+0

我想這一點,你做了逐字逐句什麼基本上,夜啼不能今天呼應$,還是比較優惠的日期和今天 –

+0

你怎麼想的日期將被打印出來?什麼格式? –

+0

Coode yes是的,我希望打印出來yyyy-mm-dd –

0

這是未經測試的,但想法是您有一個帶參數的功能。

function getPrice($price, $search_date, $happyDays=5) { 

    if(date('w', strtotime($search_date)) == $happyDays) { 
     return $price * 0.8; // 20% discount 
    } else { 
     return $price; // full price 
    } 

} 

調用它像這樣:

echo "Sum: " . getPrice(100, $_SESSION['purchase_date']); 

詩篇。我使用會話日期值,因爲我認爲如果客戶在午夜之前下訂單,客戶應該獲得折扣:-)(只要會話還活着)。