2017-08-31 44 views
-1

請任何人檢查並糾正它。此編碼是正確的按天印刷時間

<?php 
    $dt='2017-08-30'; 
    $dt1 = strtotime($dt); 
    $dt2 = date("l", $dt1); 
    $dt3 = strtolower($dt2); 
    if(($dt3 == "Monday")) 
     { 
      echo "6:00-8:00"; 
     } 
    else if(($dt3 == "tuesday")) 
     { 
      echo "8:00-10:00"; 
     } 
    else if(($dt3 == "wednesday")) 
     { 
      echo "10:00-12:00"; 
     } 
    else if(($dt3 == "thursday")) 
     { 
      echo "12:00-14:00"; 
     } 
    else if(($dt3 == "friday")) 
     { 
      echo "14:00-16:00"; 
     } 
    else if(($dt3 == "saturday")) 
     { 
      echo "14:00-16:00"; 
     } 
    else if(($dt3 == "sunday")) 
     { 
      echo "16:00-18:00"; 
     } 
?> 

如果

週一打印6-8

週二打印8-10

週三打印10-12

週四打印12-14

週五打印14-16

週六打印16-18

週日打印16-18

+1

你應該運行它,並讓我們知道結果。如果您正在尋找代碼審查,請嘗試https://codereview.stackexchange.com/。 – chris85

+0

將星期六的小寫字母 –

+0

與代碼和輸出之間的拼寫錯誤進行比較,將「Monday」更改爲「星期一」。 – mickmackusa

回答

2

不要使用if語句,使用查找陣列的電池。這將更容易閱讀和管理。

代碼:(Demo

$lookup=['Monday'=>'6:00-8:00', 
     'Tueday'=>'8:00-10:00', 
     'Wednesday'=>'10:00-12:00', 
     'Thursday'=>'12:00-14:00', 
     'Friday'=>'14:00-16:00', 
     'Saturday'=>'14:00-16:00', 
     'Sunday'=>'16:00-18:00']; 
if(function_exists('date_default_timezone_set')){ 
    date_default_timezone_set('Asia/Calcutta'); // whatever timezone you wish 
} 
$day=date("l"); 
    //$dt='2017-08-30'; 
    //$day=date("l",strtotime($dt)); 
echo $day,' ',$lookup[$day]; 

DateTime ...

$TZ=new DateTimeZone('Asia/Kolkata'); // whatever timezone you wish 
$now=new DateTime('NOW',$TZ); 
$day=$now->format('l'); 
echo $day,' ',$lookup[$day]; 

輸出:

Wednesday 10:00-12:00 
+1

好得多的答案+ 1 –

+0

其實我想根據天數自動更改,如果今天是星期四打印12-14,如果明天是星期五,時間將更改爲14-16。 –

+0

@ Mr.Kumar好消息:這正是這樣做的。點擊我的Demo鏈接,將日期改爲8月31日,看看它如何改變。 – mickmackusa