繁体   English   中英

周期性事件PHP

[英]Recurring events php

我正在尝试允许用户在类似于Google日历的日历应用中安排活动。 我需要实现一个每3周重复一次,在2次出现后结束的活动

我当前的代码如下:

$week = array('0'=>"Sunday","1"=>"Monday","2"=>"Tuesday","3"=>"Wednesday","4"=>"Thursday","5"=>"Friday","6"=>"Saturday");
                       $day = $week[$val];

$days = array(
    'Monday',
    'Tuesday',
    'Wednesday',
    'Thursday',
    'Friday',
    'Saturday',
    'Sunday',
  );

  $today = new DateTime($day);
  //$today = new DateTime('Friday'); //can set specific day if needed
//  print "Today is " . $today->format('l') . "\n";

  foreach($days as $day) {

    $diff = new DateTime($day);
    $diff = $diff->format('N') - $today->format('N');

    if($diff > 0) {
      //print "$day is $diff days in the future\n";
      //print "\n$diff days future\n";
       $st=date('Y-m-d H:i:s',strtotime('+'.($diff).' day',strtotime($s)));
    $et=date('Y-m-d H:i:s',strtotime('+'.$date_diff.'day',strtotime($s)));
    }
    elseif($diff < 0) {
      $diff = abs($diff);
     // print "$day is $diff days in the past\n";
     //  print "$diff days fast\n";
        $st=date('Y-m-d H:i:s',strtotime('+'.($diff).' day',strtotime($s)));
    $et=date('Y-m-d H:i:s',strtotime('+'.$date_diff.'day',strtotime($s)));
    }
    else {
    $st=date('Y-m-d H:i:s',strtotime('+'.$recordsave.' day',strtotime($s)));
    $et=date('Y-m-d H:i:s',strtotime('+'.$date_diff.'day',strtotime($s)));
    }
  }

有什么想法的朋友吗?

触发PHP代码的唯一方法是用户正在访问它。 我建议就此事进行CRON工作

您可以设置CRON时间表来运行特定的代码行,方法是每3周调用CRON作业中的PHP页面2周。

暂无
暂无

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

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