php 如何判断时间连续性?
$time = array('2011-10-25','2011-10-27','2011-11-01');等等,如何判断时间是否是连续的?
[解决办法]
strtotime('2011-10-25');后判断。
[解决办法]
mktime() strtotime date 这三个函数就可以做到 自己研究去吧
[解决办法]
相邻2个转换成时间戳相减是否为一天的时间戳(如果一天算连续的话)
[解决办法]
整个数组时间连续还是部分连续?
整个数组连续的:
<?php$arr = array('2011-10-25','2011-10-27','2011-10-26','2011-10-24');function compare($x,$y){ return (strtotime($x)-strtotime($y));}uasort($arr,'compare');$arr = array_slice($arr,0);for($i = 1;$i<count($arr);$i++){ if((strtotime($arr[$i])-strtotime($arr[0]))==($i*24*60*60)){ $flag = 1; } else{ $flag = 0; break; }}echo $flag?"连续":"不连续";
[解决办法]
刚才在另一个帖子 贴出了我的方法
是以时间递增一天算得:
$a = array('2011-10-30','2011-10-31','2011-11-01');$flag = true;for($i=0;$i<count($a)-1;$i++){ $nextDay = date("Y-m-d",strtotime("+1 day",strtotime($a[$i]))); if($a[$i+1]!=$nextDay){ $flag = false; break; }}if($flag==true){ echo "时间连续";}else{ echo "时间不连续";}