【www.bbyears.com--php常用代码】
非法的汉字会影响到显示甚至程序的执行,会出现一些意想不到的结果。所以我们需要过滤这些非法的汉字或字符。
代码如下
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;
}