我有一个送货服务,只在周一到周四取货。我只想为用户提供下一个可用的三天作为预定取件的选项。
我的代码有效,但我想知道是否有一种更“有效”的方式来编写我想要实现的目标?
$numericDay=date('N');
if ($numericDay==1) {
echo '<option value="' . date('Ymd', strtotime('+1 days')) . '">' . date('\T\o\m\o\r\r\o\w - F j, Y', strtotime('+1 days')) . '</option>';
echo '<option value="' . date('Ymd', strtotime('+2 days')) . '">' . date('l - F j, Y', strtotime('+2 days')) . '</option>';
echo '<option value="' . date('Ymd', strtotime('+3 days')) . '">' . date('l - F j, Y', strtotime('+3 days')) . '</option>';
}
if ($numericDay==2) {
echo '<option value="' . date('Ymd', strtotime('+1 days')) . '">' . date('\T\o\m\o\r\r\o\w - F j, Y', strtotime('+1 days')) . '</option>';
echo '<option value="' . date('Ymd', strtotime('+2 days')) . '">' . date('l - F j, Y', strtotime('+2 days')) . '</option>';
echo '<option value="' . date('Ymd', strtotime('next monday')) . '">' . date('l - F j, Y', strtotime('next monday')) . '</option>';
}
if ($numericDay==3) {
echo '<option value="' . date('Ymd', strtotime('+1 days')) . '">' . date('\T\o\m\o\r\r\o\w - F j, Y', strtotime('+1 days')) . '</option>';
echo '<option value="' . date('Ymd', strtotime('+next monday')) . '">' . date('l - F j, Y', strtotime('next monday')) . '</option>';
echo '<option value="' . date('Ymd', strtotime('next tuesday')) . '">' . date('l - F j, Y', strtotime('next tuesday')) . '</option>';
}
if ($numericDay>=4 and $numericDay<=7) {
echo '<option value="' . date('Ymd', strtotime('next monday')) . '">' . date('l - F j, Y', strtotime('next monday')) . '</option>';
echo '<option value="' . date('Ymd', strtotime('next tuesday')) . '">' . date('l - F j, Y', strtotime('next tuesday')) . '</option>';
echo '<option value="' . date('Ymd', strtotime('next wednesday')) . '">' . date('l - F j, Y', strtotime('next wednesday')) . '</option>';
}
提前感谢您的任何见解!