1 回答

TA貢獻2012條經驗 獲得超12個贊
首先,我假設您有幾個相同的 if/else 語句與第二個代碼片段中的語句相匹配。我們可以通過在您的代碼中使用額外的循環(huán)來清理它們。我還將向您展示如何使用數組而不是為每一天創(chuàng)建一個單獨的變量。
在循環(huán)上方,創(chuàng)建一個數組,其中每個鍵對應于一周中的一天。(用這個替換你所有的$total{DAY} = 0;變量聲明)
$days = [
'Monday' => 0,
'Tuesday' => 0,
'Wednesday' => 0,
'Thursday' => 0,
'Friday' => 0
];
現在,我們可以替換用于增加$total{DAY}變量的 if/else 語句。將所有這些 if/else 語句替換為:
foreach(array_keys($days) as $day) {
echo '<b>{$day}: </b>';
if(!empty($presentie["work{$day}"])) {
++$days[$day];
echo $presentie["work{$day}"];;
} else{
echo 'not available';
}
}
這 9 行代碼與您之前的 ~35 行代碼完全相同。
現在,進入您的實際問題。您在評論中說,您在問題中要求的輸出是“ ...在同一頁面上且在循環(huán)之前”。這是一個問題,因為您的循環(huán)會增加這些值,因此無法在循環(huán)之前訪問它們。你必須把它放在循環(huán)之后。以下是循環(huán)后的操作方法:
//replace with the name of your date select element]
$date = $_POST['date'];
//using `date()`, get the day of the week of the selected date. (Monday-Friday)
$day_of_week = date('l', strtotime($date));
if($days[$day_of_week] > 0) {
echo $days[$day_of_week] . " people available.";
} else {
echo "Not Available";
}
- 1 回答
- 0 關注
- 184 瀏覽
添加回答
舉報