Допустим, вам пришла от клиента строка в кодировке UTF-8 с битым символом (скопировал с другого сайта). Вы пытаетесь записать строку в базу данных, а она у вас валится с сообщением о том, что битые символы не принимаются.
Чтобы починить ситуацию, нужно удалить битые символы. Но как их удалить? С помощью preg_replace удалить все, что не "a-Яa-Z0-9.!@#$%^&" и т.д.? Не вариант, у вас ведь международный сайт, там могут быть и японские символы.
Выход:
$content = iconv('utf-8', 'utf-8//IGNORE', $content);
Функция конвертирует utf-8 в utf-8, при этом попутно пропуская символы, которые не может обработать.