統計字串中每個字元出現的次數的方法:首先建立一個PHP範例檔案;然後把出現過的字元記錄在array數組中;最後透過foreach循環遍歷統計字串中出現的字元次數即可。
本文操作環境:windows7系統、PHP7.1版,DELL G3電腦
本文實例講述了PHP實作統計所有字元在字符串中出現次數的方法。分享給大家參考,具體如下:
先來看看效果:
演算法:
##一次字串一次迴圈(本例的$str),把出現過的字串記錄在一個陣列(如本例的$strRecord)內,如果已經此記錄函數已經有,則不記錄;在每個字串時,拿來與記錄數組的值進行比較(本例的$strRecord[]['key']),如果記錄裡的某個值和這個字串一樣,就記錄次數1(本例的$strRecord[ ]['count']);當然,設定一個變量,預設為false(如本例的$found),記錄每次比較完,如果記錄數組已經有這個值,就設定為true ,透過這個標記,把沒有遇過的陣列記錄到陣列裡#實作程式碼:<?php //统计字符串中出现的字符,出现次数 echo '<pre class="brush:php;toolbar:false">'; $str = 'aaabbccqqwweedfghhjffffffffggggggggg';//字符串示例 echo $str.'<br/>'; $strRecord=array();//把出现过的字符记录在此数组中,如果记录有,则不记录, for($i=0;$i<strlen($str);$i++){ $found = 0;//默认设置为没有遇到过 foreach((array)$strRecord as $k=>$v){ if($str[$i] == $v['key']){ $strRecord[$k]['count'] += 1;//已经遇到,count + 1; $found = 1;//设置已经遇到过的,标记 continue;//如果已经遇到,不用再循环记录数组了,继续下一个字符串比较 } } if(!$found){ $strRecord[] = array('key'=>$str[$i],'count'=>1);//记录没有遇到过的字符串 } } print_r($strRecord); ?>
PHP影片教學】
以上是怎麼統計字串中每個字元出現的次數的詳細內容。更多資訊請關注PHP中文網其他相關文章!