




























private static function getWordCount($str){
$str = strip_tags($str);
$str = trim($str);
if ($str === ‘’) {return 0;}
$cnt = 0;
$isWord = false;
$chars = preg_split(‘//u’, $str, -1, PREG_SPLIT_NO_EMPTY);
$regFullAlphaNum = ‘/[x{ff10}-x{ff19}x{ff21}-x{ff3a}]/u’;
$regCnFullSym = ‘/[x{4e00}-x{9fa5}x{ff00}-x{ff0f}x{ff3b}-x{ffef}]/u’;
foreach ($chars as $char) {
$isFullAlphaNum = preg_match($regFullAlphaNum, $char);
$isCnFullSym = preg_match($regCnFullSym, $char);
$isHalfAlphaNum = ctype_alnum($char);
if ($isCnFullSym) {
$cnt++;
$isWord = false;
} elseif ($isHalfAlphaNum || $isFullAlphaNum) {
if (!$isWord) {$cnt++;$isWord = true;}
} else {
$isWord = false;
}
}
return $cnt;
}
业务用途:广泛用于阅读付费提示该文共计多少字,隐藏了多少字。长篇连载小说字数统计(统计一整本下面的总字数),留言~评论~聊天等字数核验,投稿计价等等。
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。