Подтвердить что ты не робот

Iconv UTF-8//IGNORE все еще производит ошибку "незаконный символ"

$string = iconv("UTF-8", "UTF-8//IGNORE", $string);

Я думал, что этот код удалит недопустимые символы UTF-8, но он создает [E_NOTICE] "iconv(): Detected an illegal character in input string". Что мне не хватает, как правильно удалить строку из незаконных символов?

4b9b3361

Ответ 1

Выходной набор символов (второй параметр) должен отличаться от входного набора символов (первый параметр). Если они совпадают, то если в строке есть недопустимые символы UTF-8, iconv отклонит их как незаконные в соответствии с набором символов ввода.

Ответ 2

Чтобы просто игнорировать уведомление, вы можете использовать "@":

$string = @iconv("UTF-8", "UTF-8//IGNORE", $string);