2017-09-29 232 views
0

有人可以幫助我,我正在嘗試做這項工作。 如果日期是星期日,那麼我希望它每小時的時間乘以1.5。php計算乘法日期

<?php 
date_default_timezone_set('Europe/London'); 
$date ='2017/09/24'; 
$Hours ='';// removed to keep private 
$Hourly_rate='';// removed to keep private 
$sundaypay = $Hourly_rate*1.5; 
if(date('w', strtotime($date)) == 7): 
    $pay = ($Hours * $sundaypay); 
else: 
    $pay = ($Hours * $Hourly_rate); 
endif; 
?> 

它不工作,只是輸出其他,即使2017/09/24是星期天。有誰知道爲什麼

if(date('w', strtotime($date)) == 7): 

不起作用?

<?php echo $pay;?> 
+2

是日期( 'W',的strtotime($日期)打印7?你如何進行調試? –

回答

2

打開一個php手冊date

在那裏,你將看到w格式選項被描述爲

的星期幾的數字表示:到6 0(星期日)(星期六)

看到了嗎?沒有7,只有從06的數字。

要麼比較0,或使用N格式選項,即:一週(在PHP 5.1.0添加的)當天的

ISO-8601數字表示:1(星期一)到7(星期日)

if(date('N', strtotime($date)) == 7) 
// or 
if(date('w', strtotime($date)) == 0) 
+0

謝謝你,這已經成功了!我已經在過去使用的N-。我不知道這個數字會有什麼變化,我以爲我把它寫出來了st表明你必須檢查一切! – Derbyshire10