Я очень часто работают с генерацией XML-файлов и сталкиваюсь с тем, что периодически юзеры заносят в базу управляющие символы, а также шестнадцатиричные символы. Наличие и тех и других напрочь ломает структуру файла и делает его нечитабельным для поисковых роботов и маркетплейс-ботов.
Для себя нашел единственный выход: пропускать строку через два регулярных выражения.
Очистка php строки от шестнадцатеричного кода
// Remove hex from string php
$x = preg_replace('/0x[0-9a-fA-F]{6}/', '', $x);
Очистка php строки от управляющих символов
// Remove control characters from PHP string
$x = preg_replace('/[\x00-\x1F\x7F]/', '', $x);
Надеюсь, что вам тоже пригодятся эти регулярки при работе с данными для XML фида.