PHP查找数组是否有连续出现的数字

 

PHP查找数组是否有连续出现的数字

 

 

 

<?php\

/**
 * 查找数组是否有连续出现的数字
 * @param array $arr 数组
 * @param integer $n 连续位数
 * @return bool
 */
function getConsecutive($arr,$n){
    sort($arr);
    $m = 1;
    for($i=0,$t = count($arr) - 1;$i < $t;$i++) {
        $m = $arr[$i] + 1 == $arr[$i + 1] ? $m + 1 : 1;
        if($m >= $n) return true;
    }
    return false;
}

/**
* 获取随机数组
* @param integer $num 数量
* @return array
*/
function getRedArray($num=9){
$result = array();
while (count($result) < $num) {
$result[] = mt_rand(0, 9);
}
if((array_sum($result)% 10)!==0) return getRedArray($num);
if(getConsecutive($result,4)==true)return getRedArray($num);
return $result;
}
 

 

posted @ 2020-09-25 18:49  MargoHu  阅读(1045)  评论(0编辑  收藏  举报