繁体   English   中英

PHP日历周期(每周)

[英]PHP calendar periods (weekly)

我正在做日历,现在我处于活动的周期间。 我不能这样做,但它只能在下个月和其他月份使用。

$i = 1; 

            $den = $post->day;
            $mesic = $array['month'];
            $rok = $array['year'];
            $minusDays = $this->numDays(date('l', $den.".".$mesi.".".$rok));
            $startedWeek = date('W', strtotime($den.".".$post->month.".".$post->year));
            $actualWeek  = date('W', Time());

            $startedWeek = $actualWeek - $startedWeek;


            for($i; $i<6; $i++){
                if($i==1){
                $startedWeek = $startedWeek;
            }else{
                $startedWeek = $startedWeek+1;
            }
                $plusDay = date('j', strtotime($den.".".$mesic.".".$rok." + ".$startedWeek." weeks - ".$minusDays." days"));
                $plusWeek = date('n',strtotime($den.".".$mesic.".".$rok." + ".$startedWeek." weeks - ".$minusDays." days"));
                $plusYear = date('Y',strtotime($den.".".$mesic.".".$rok." + ".$startedWeek." weeks - ".$minusDays." days"));

                       echo "<input type='hidden' class='interval' data-id='".$post->id."' data-name='".$post->name."' data-d='".$plusDay."' data-day='".$plusDay."' 
                       data-before='".$post->remindBefore."' data-unit='".$post->remindBeforeUnit."' data-remindBy='".$post->remindBy."' data-remindInterval='".$post->remindInterval."' 
                       data-eventTimeH='".$post->remindH."' data-eventTimeM='".$post->remindM."'>";             
                                }

$ post-> day是周期中的日期,$ array ['month']现在列出的月份,$ array ['year']现在列出的年份。 返回0-6的函数numDays取决于哪一天。 谢谢。 它必须处于隐藏状态,因为HTML 5日历。

可以,它在St列中,下个月是相同的,但是接下来的2个月在Čt列中。

在此处输入图片说明

在此处输入图片说明

好吧,我做了解决方案,首先是要获取开始日期

$dayOfWeek = date('w', strtotime($post->day.".".$post->month.".".$post->year)); // day of week to start period 

在此之后,我设置了第一天的变量,即1。它将进入cyclus,所以它是0。添加此变量后,我每天都会循环循环,并检查实际的日期是星期三还是星期二,等等。

$dd=0;

                        for($i=1; $i<7; $i++){

                            for($c=0; $c<7; $c++){
                                $dd++;
                                $actualDayOfWeek = date('w', strtotime($dd.".".$array['month'].".".$array['year']));
                                $plusDay = date('j', strtotime($dd.".".$array['month'].".".$array['year']));
                                if($dayOfWeek != $actualDayOfWeek){
                                }else{

                                    $actualDayOfWeek = date('w', strtotime($dd.".".$array['month'].".".$array['year']));
                                    $plusDay = date('j', strtotime($dd.".".$array['month'].".".$array['year']));
                                    echo "<input type='hidden' class='interval' data-id='".$post->id."' data-name='".$post->name."' data-d='".$dd."' data-day='".$plusDay."' 
                                  data-before='".$post->remindBefore."' data-unit='".$post->remindBeforeUnit."' data-remindBy='".$post->remindBy."' data-remindInterval='".$post->remindInterval."' 
                                  data-eventTimeH='".$post->remindH."' data-eventTimeM='".$post->remindM."'>";  
                                    break;
                                }
                            }


                        }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM