我想两个给定日期细腻的方式来获得的年两个给定日期
这里间的年度清单和月份之间的名单和月份是我的代码
function yearMonth($start_date, $end_date)
{
$years = array();
$base = 0 ;
while(($start_date) < $end_date)
{
$y = date('Y' , $start_date);
// if its the original start_time check the month from
//current date else get the first day and month in that year
$base = ($base == 0) ? $start_date : strtotime("{$y}-1-1");
for($i = 1 ; $i <= 12 ; $i++)
{
if($base > $end_date)
break;
$years[date("Y", $start_date)][] = date("F" , $base);
$base += 2629743.83;
}
$base += $start_date += 31556926 ;
}
return $years;
}
$list = yearMonth(strtotime("2010-11-8") , strtotime("2012-11-11"));
var_dump($list);
所以这里是问题
$base = ($base == 0) ? $start_date : strtotime("{$y}-1-1");
在这里
我检查start_date
是我传递给函数 如果是我设置的基地在这一年Ë找到个月的原QUAL到START_DATE ,如果它不是我所设置的基本等于一年的第一个月
现在我们得到了我的问题原来
for($i = 1 ; $i <= 12 ; $i++)
在这里我假定有12个月在这一年但如果它是最初的start_date,它可能会更少
我如何计算给定日期年的剩余月份?
另一个问题是在这里
for($i = 1 ; $i <= 12 ; $i++)
{
if($base > $end_date)
break;
$years[date("Y", $start_date)][] = date("F" , $base);
$base += 2629743.83;
}
所以我想每个月都有2629743.83秒但它不是很准确becuz闰年
的是有没有清洁的方式做到这一点?
我不明白这个问题。你能给我们一些样本输入和预期输出吗? – Eric 2012-08-14 01:53:07
“_但它并不是非常准确的闰年_”或者,你知道,月份的长度是不同的。 – Eric 2012-08-14 01:54:34
@Eric我如何计算给定日期年的剩余月份?并且如果有更准确的方法来做到这一点 – max 2012-08-14 02:16:22