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;
}
 
原文地址:https://www.cnblogs.com/ccw869476711/p/13731816.html