我创建了一个脚本,该脚本根据用户输入创建时间段。对于本例,我们将使用每周的时间框架周期。用户访问我的网站,并希望每周收到线索,从设定的日期开始,他们进入,每7天的线索将被发送给用户。我需要输出的是有多少线索被发送了一个月,而不是从脚本生成的一周的一天。基本上是通过区分哪一天在一月,哪一天在二月,等等来组合每周的天数。
<input type='hidden' name='start_date' value='12/27/2012'>
$date1 = $_POST['start_date'];
$date2 = date('M j, Y', strtotime($date1 . ' + 7 Day')); // echo Jan 3, 2013 sent 5 leads
$date3 = date('M j, Y', strtotime($date2 . ' + 7 Day')); // echo Jan 10, 2013 sent 3 leads
$date4 = date('M j, Y', strtotime($date3 . ' + 7 Day')); // echo Jan 17, 2013 sent 7 leads
$date5 = date('M j, Y', strtotime($date4 . ' + 7 Day')); // echo Jan 24, 2013 sent 9 leads
$date6 = date('M j, Y', strtotime($date5 . ' + 7 Day')); // echo Jan 31, 2013 sent 8 leads
$date7 = date('M j, Y', strtotime($date6 . ' + 7 Day')); // echo Feb 7, 2013 sent 1 leads
$date8 = date('M j, Y', strtotime($date7 . ' + 7 Day')); // echo Feb 14, 2013 sent 8 leads
$date9 = date('M j, Y', strtotime($date8 . ' + 7 Day'));
$date10 = date('M j, Y', strtotime($date9 . ' + 7 Day'));
$date11 = date('M j, Y', strtotime($date10 . ' + 7 Day'));
$date12 = date('M j, Y', strtotime($date11 . ' + 7 Day'));
$date13 = date('M j, Y', strtotime($date12 . ' + 7 Day'));
$date14 = date('M j, Y', strtotime($date13 . ' + 7 Day'));
$date15 = date('M j, Y', strtotime($date14 . ' + 7 Day'));
$date16 = date('M j, Y', strtotime($date15 . ' + 7 Day'));
我想输出Jan 32 Leads &2月9日。我不能简单地添加变量,因为它是基于不同的开始日期。
如果我是你,我会使用DatePeriod,因为它完全是你想要的:
$start = DateTime::createFromFormat('M j, Y',$_POST['start_date']);
$interval = new DateInterval('P1D');
$period = new DatePeriod($start,$interval,16);//as you want 16 iteration
foreach($period as $iteration=>$date){
//use $iteration to know which one you are processing
echo $date->format('M j, Y');
}