当前位置: 首页 > 知识库问答 >
问题:

在月初/月末显示记帐占位符空间的日历(月日、周日)

邓俊英
2023-03-14
dt  y   q   m   d   dw  monthName   dayName w   isWeekday   isHoliday   holidayDescr    isPayday
2010-01-01  2010    1   1   1   6   January Friday  0   1   1   New Year's Day  0
2010-01-02  2010    1   1   2   7   January Saturday    0   0   0       0
2010-01-03  2010    1   1   3   1   January Sunday  1   0   0       0
2010-01-04  2010    1   1   4   2   January Monday  1   1   0       0
2010-01-05  2010    1   1   5   3   January Tuesday 1   1   0       0

所以代码的开头部分是:

echo '<table>';
$sql="SELECT * FROM sched_calendar_table WHERE y=2013";
$result=mysql_query($sql);
while($row=mysql_query($result)){
 echo '<tr><td>'; // .. unsure how to account for the placeholder days that aren't part of the month being displayed... how to do this?
}
echo '</table>';

共有1个答案

终安和
2023-03-14

快速函数,按周返回所有日期,从星期一开始,到星期日结束(即使这些日期是在月后/月前)。

function getWeekDays($month, $year)
{
    $dFrom = new DateTime("$year-$month-01");
    $dTo = clone $dFrom;
    if (($N = $dFrom->format('N')) > 1) {
        $dFrom->modify('-' . ($N - 1) . ' day');
    }
    $dTo->add(new DateInterval('P1M'));
    if (($N = $dTo->format('N')) < 7) {
        $dTo->modify((8 - $N) . ' day');
    }

    $p = new DatePeriod($dFrom, new DateInterval('P1D'), $dTo);

    $datesByWeek = array();
    foreach ($p as $d) {
        $datesByWeek[ $d->format('W') ][] = $d;
    }
    return $datesByWeek;
}

示例:

print_r( getWeekDays(1, 2013) );

现在你有了代表当前月份的所有日期,所以你可以做DB魔术...

 类似资料:
  • 我需要一个Android日历视图像附上的照片。我已经尝试使用这个库https://github.com/alamkanak/android-week-view作为日历视图。这是一个固定的静态事件在日历添加仅。无法在此库日历视图中添加动态事件。有没有人可以推荐任何一个自定义库在Android。 日历视图库代码示例Android-Week-View: 我在这个图书馆所尝试的: 注: 我需要在此日历视图

  • 我正在使用amsul DateTimePicker:https://amsul.ca/pickadate.js/date/

  • 问题内容: 我尝试使用日历设置若干年后的简单日期: 字符串日期是此方法的参数。 我的问题是,否则日期返回还可以,但是月份数字完全错误,并且每次运行时看起来都越来越大!我想念的是什么? 问题答案: 测试

  • 本文向大家介绍php获取当前月与上个月月初及月末时间戳的方法,包括了php获取当前月与上个月月初及月末时间戳的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了php获取当前月与上个月月初及月末时间戳的方法。分享给大家供大家参考,具体如下: 当前月 上一月 这里对关键的就是date函数中的t,它是用来获取当前月所含天数的,28天,29天,30天,31天。含有多少天,月底就是多少号。 PS

  • 我想加上爱彼迎-反应-日期。选择开始日期和结束日期后,重新打开日期选择器时,日历显示当前月份,而不是所选开始日期/结束日期的月份。 例如:如果我设置开始日期=2017-05-05和结束日期=2017-05-09,那么它会显示选定的日期,但如果我再次单击,日历选择器打开,它只显示当前月份即2月日历,这就是为什么我必须单击下个月,下个月才能看到以前选定的日期即5月; 我是如何实现的:从https://

  • 问题内容: 我正在使用以下代码 输出是 添加到 一月 是给 月 月。如果我们在当前日期加上30天,则可能返回正确的输出。但我想显示 2 月。有人可以帮我吗.. 问题答案: 您可以看到+1设置字段添加的日期与您的日期不同(从输出中观察到)。 如果你想几个月,那么使用代码