首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >php检查数组值是否连续

php检查数组值是否连续
EN

Stack Overflow用户
提问于 2012-01-02 05:19:24
回答 4查看 4K关注 0票数 0

我有一个数组$dice (4,7,3,6,7)

我需要一种方法来检查该数组中的每个值是否都是连续的数字。

有没有一种简单的方法可以做到这一点?

EN

回答 4

Stack Overflow用户

发布于 2012-01-02 05:31:49

试试这个:

代码语言:javascript
复制
$dice = array(4,5,2,6,7);
function checkConsec($d) {
    for($i=0;$i<count($d);$i++) {
        if(isset($d[$i+1]) && $d[$i]+1 != $d[$i+1]) {
            return false;
        }
    }
    return true;
}
var_dump(checkConsec($dice)); //returns false
var_dump(checkConsec(array(4,5,6,7))); //returns true
票数 3
EN

Stack Overflow用户

发布于 2012-01-02 05:24:34

代码语言:javascript
复制
function HasConsec($array)
{
    $res = false;
    $cb = false;
    foreach ($array as $im)
    {
        if ($cb !== false && $cb == $im)
            $res = true;
        $cb = $im + 1;
    }

    return $res;
}
票数 1
EN

Stack Overflow用户

发布于 2012-01-02 05:39:44

我想这就是你要找的东西

代码语言:javascript
复制
for ($c = 0; $c < count($dice); $c++){
    $next_arr_pos = $c+1;

    if ($c == (count($dice) -1)){
        $cons_check = $dice[$c];
    }
    else
    {
        $cons_check = $dice[$next_arr_pos];
        $gap_calc = $cons_check-$dice[$c];
    }

    if ($dice[$c] < $cons_check && $gap_calc == 1){

        echo 'arr_pos = '.$dice[$c].' Is consecutive with '.$cons_check.' <br />';
    }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8695620

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档