$array = [2,3,3,3,3,4,2,4,4,5,5,3,3,7,7,6,6,6,8,8,4,4,4,4,4,8,8,8,8,98,6,98,98];
Array ( [2] => 1 [3] => 4 [4] => 5 [5] => 2 [7] => 2 [6] => 3 [8] => 4 [98] => 2 )
$a = [];
$tmp = 0;
$count = 1;
foreach ($array as $k => $v) {
if ($tmp == 0) {
$tmp = $v;
continue;
}
if ($tmp == $v) {
$count++;
} else {
if(isset($a[$tmp])){
if ($a[$tmp] < $count) {
$a[$tmp] = $count;
}
} else {
$a[$tmp] = $count;
}
$tmp = $v;
$count = 1;
}
if (!isset($array[$k+1])) {
if(isset($a[$v])){
if ($a[$v] < $count) {
$a[$v] = $count;
}
} else {
$a[$v] = $count;
}
}
}
print_r($a)
$num = 0; //记录当前的值
$t = 1; //记录当前序列长度
$maxnum = 0; //记录序列最长的值
$maxt = 0; //记录当前最长序列的长度
$arrt = count($array); //当前序列总长度
$num = $array[0];
$aaa = []; //记录统计汇总
for($i=1;$i<$arrt;$i++){
if($array[i]<$num){
$t++;
}else{ //当前值与前面的不一样时
$aaa = [
'account'=>$t,
'v' =>$num
];
array_push($aa,$aaa);
if($t>$maxt){
$maxt = $t;
$maxnum = $num;
}
$num = $array[i];
$t = 1; //重新统计序列长度
}
}
echo $maxnum . "," . $maxt;
print_a($aaa);