php - 即将发布的日期列表

时间:2010-10-06 17:31:58

标签: php date timezone

所有用户都在美国。我需要能够列出除了今天的所有工作日。所以说它是10月7日星期四。它应该从10月8日星期五到10月11日星期一开始。

我知道如何确保我只是在工作日上市,但是我遇到的麻烦就是确保明天是明天。过去它在东部时间晚上8点左右发生了变化。我想我想在第二天将它算作12点太平洋的时候就是这样。

2 个答案:

答案 0 :(得分:1)

<?php
   $current = new DateTime('now');
   $last = new DateTime('saturday');
   while ($current < $last) {
      echo $current->format('l, F j'), "\n";
      $current->modify('+1 day');
   }
?>

答案 1 :(得分:0)

您可以使用strtotime获取下一天的日期,然后使用date确定日期是否为工作日:

<?php
$reference = time(); // We set today as the first day //

for ($i=0, $j=0; $i<5; $i++, $j++) {
   $nextDay = strtotime('+' . $j . ' days', $reference);
   if (date('w', $nextDay) > 0 && date('w', $nextDay) < 6) {
       echo date('r', $nextDay), "\n";
   } else {
       $i--;
   }
}
?>