显示特定日期尽可能交货日

I have possible delivery dates for an order form

$daysOff = ['Sat', 'Sun'];
for ($days = 1; $days <= 7; $days++) {
    $day = date("D", strtotime("today + $days day"));
    if (!in_array($day, $daysOff)) {
        $daysOnRearranged[] = date("D", strtotime("today + $days day"));
    }
}

This shows the next 5 days corrects

Wed, Thurs, Fri, Mon, Tue

The last day tuesday, is showing today (4th), instead of 11th. How do I fix this?

You should display available dates like this:

  $daysOff = ['Sat', 'Sun'];
    for ($days = 1; $days <= 7; $days++) {
        $day = date("D", strtotime("today + $days day"));
        if (!in_array($day, $daysOff)) {
            $daysOnRearranged[] = date("D, j M", strtotime("today + $days day"));
        }
    }

print_r($daysOnRearranged);

Here is what should be done. Your question is not appropriate but answered.

$daysOff = ['Sat', 'Sun'];

        for ($days = 1; $days <= 7; $days++) {
          $day = date("D", strtotime("today + $days day"));
          $date = date('d', strtotime("today + $days day"));
          if (!in_array($day, $daysOff)) {
            $daysOnRearranged[$date] = date("D", strtotime("today + $days day"));
          }
        }
print_r($daysOnRearranged);