既然都用 array_count_values ,用 max 求交集就是了,不必循环

解决方案 »

  1.   

    你都arsort了,直接echo key($charCount); 就是出现最多的字符了。
      

  2.   

    我循环是为了将其他同属最多次数的字符也输出来..按照你们的做法只输出了其中一个而已呢
    你没试过吧?交集啊,array_intersect,先去试一下看看结果~
      

  3.   

    求代码,我的代码求出结果如下:r出现了 5 次
    w出现了 5 次
    国出现了 5 次
    e出现了 5 次因为有4个相同次数并且是最多次数的字符
      

  4.   

    已经没有都少简化的余地了$testStr = 'rewruo ewjrewm' . PHP_EOL . 'hcywer国bg gfaaf d中国国国s国rew';
    $testStr = preg_replace('/\s/', '', $testStr);
    preg_match_all('/./u', $testStr, $strList);
    $strList = array_count_values($strList[0]);
    $r = array_keys($strList, $m = max($strList));
    echo join($t=" 出现了 $m 次<br />", $r).$t;
    r 出现了 5 次
    e 出现了 5 次
    w 出现了 5 次
    国 出现了 5 次
      

  5.   


    厉害!原来array_keys函数可以这样用