PHP iconv函数-删除字符串中第一个unicode字符之后的所有字符串

问题描述 投票:0回答:1
$string = @iconv("UTF-8", "UTF-8", $string);

我正在使用此代码替换字符串中的Unicode字符,但是实际上,这是删除字符串中第一个Unicode符号后的所有字符。还有其他功能可以帮助我做到这一点吗?

php unicode utf-8 iconv
1个回答
0
投票

我建议使用preg_replace这样执行此操作:

preg_replace('/[\x00-\x1F\x7F]/u', '', $string);

甚至更好:

preg_replace('/[\x00-\x1F\x7F\xA0]/u', '', $string);

如果以上情况不适用于您的情况,则可能:

preg_replace( '/[^[:cntrl:]]/', '',$string);

还有一个选项可以过滤所需的内容,而不是删除不需要的内容。这样的事情应该起作用:

filter_var($string, FILTER_UNSAFE_RAW, FILTER_FLAG_STRIP_LOW|FILTER_FLAG_STRIP_HIGH);
© www.soinside.com 2019 - 2024. All rights reserved.