我正在编写一个函数来清除带或不带ut8字符的文本。
我不断收到这样的文字。
Coventry Salary - �25,000 - �35,000
但是使用此功能可以删除 但会留下其他功能。
我想知道是否有人编写了一个清理文本的函数。
function convertHTMLSpecialChars ( $str='' )
{
$str = htmlspecialchars ( $str );
$str = mb_convert_encoding($str, 'UTF-8', mb_detect_encoding($str));
$str = htmlspecialchars($str, ENT_NOQUOTES, 'UTF-8');
return $str;
}
答案 0 :(得分:1)
确保服务器将您的页面输出为UTF-8。
你可以使用:
强制它header ('Content-type: text/html; charset=utf-8');
答案 1 :(得分:1)
这个功能:
$str = mb_convert_encoding($str, 'UTF-8', mb_detect_encoding($str));
仅tries
来检测来自$str
的字符集;如果它发现$ str包含
utf8字符它将返回“utf8”所以func实际上是:
$str = mb_convert_encoding($str, 'UTF-8', 'UTF-8');
哪个帮助不大.. 在我看来你应该手工提供字符串的字符集。 例如,如果它的 turkish:iso-8859-5 ,如果它的 greek:iso-8859-7 等等......