筛选超过2个字节的字符

时间:2018-02-09 01:08:47

标签: php character-encoding

我需要过滤超过2个字节的字符。所以

“testöüß()?”应该通过,“☑”和emojis应该被过滤。我尝试了一些不同的方法(utf8_decode,mb_convert函数),但我无法让它正常工作。它总是删除2个字节的字符,如“ö”。

1 个答案:

答案 0 :(得分:0)

尝试这样的事情:

$str = 'abc★def';
mb_substitute_character('none');  // Set mb_convert_encoding() to strip invalid characters
$str = mb_convert_encoding($str, 'ascii', 'utf-8'); // convert utf-8 to ascii, stripping invalid characters
var_dump($str);  // now contains 'abcdef'