非法的汉字会影响到显示甚至程序的执行,会出现一些意想不到的结果。所以我们需要过滤这些非法的汉字或字符。
代码如下
代码如下 |
复制代码 |
function normalizeText($text, $length = null)
{
$text = \Normalizer::normalize($text, \Normalizer::FORM_C);
$text = preg_replace('/[^\p{L}\p{P}\p{N}\p{S}\p{Zs}]/u', "", $text);
$text = preg_replace('/^\p{Z}*/u', "", $text);
$text = preg_replace('/\p{Z}*$/u', "", $text);
if ($length !== null) {
$text = mb_substr($text, 0, $length, 'utf-8');
}
return $text;
}
|