《怎樣用PHP檢測字符串中是否包含漢字以及漢字字數》要點:
本文介紹了怎樣用PHP檢測字符串中是否包含漢字以及漢字字數,希望對您有用。如果有疑問,可以聯系我們。
相關主題:PHP開發
在網站建設時,經常會需要檢測一個字符串中的漢字字數或是否有漢字,或中英文混合字數。
下面這個維易PHP函數就是應用在這類需求上。
/**字符串字數:適合中英混合 * @param $str * @return mixed */ function mixStrLen($str) { $cn = chinese_check($str); return $cn[3]; } /**中英文字串檢測——只計算字數用 mixStrLen($str) * @param $str * @return array[4] :array(0)第一組值是漢字字數,array(1)第二組值表示“是否為全部漢字,1為是,2是部分漢字”,array(2)第三組是漢字字符數,array(3)第四組是這個字符串總字數,中英均算一個字。 */ function chinese_check($str) { $strlen = strlen($str); $cnNums = $charNums = $strType = 0; $encodelen = strlen('中'); for($i=0;$i<$strlen;$i++){ $chr = ord(substr($str,$i,1)); if($chr>0xa0){ $i += ($encodelen-1); $cnNums++ ; #有漢字,保存漢字數目 }else{ $charNums++; } } $cnCharNums = $cnNums*$encodelen; //字符數,只含漢字部分, if($cnCharNums==$strlen) $strType = 1; #全是漢字 if($cnCharNums>0&&$cnCharNums<$strlen) $strType = 2; #全串部分含有漢字 $strCharLen = $charNums+$cnNums; return array($cnNums,$strType,$cnCharNums,$strCharLen); }
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/122.html