在给定的字符数组中找出连续最长的数字串,并把这个串的长度返回

解决方案 »

  1.   

    老大果然热心!!假设是数组a吧,$a=array('27845615','47234567','78786781','60175123')
      

  2.   


    $a=array('27845615','47234567','78786781','60175123');foreach($a as $v) {
        echo fountMax($v). '<br/>';
    }/*3
    6
    3
    3*/
    function fountMax($str)
    {
        $arr = str_split($str);
        $max = 1;
        $tmp = 1;
        for($i=1; $i<count($arr); $i++) {
            if($arr[$i-1]+1 == $arr[$i]) {
                $tmp++;
                $max = $tmp>$max ? $tmp : $max;
            }
            else {
                $tmp = 1;
            }
        }
        return $max;
    }