В php, Подготовьте строку и создайте XML / RSS-канал

Я хочу создать собственный RSS / XML-канал. Я извлекаю данные из базы данных для отображения, но продолжаю получать недопустимые символьные ошибки. Если в строке есть амперсанд или другие странные символы, XML будет недействительным.

Я пытался использовать urlencode и htmlentities, но они не захватывают все возможные символы, которые нужно избегать. Кто-нибудь знает о функции PHP, которая подготовит строку для вывода XML?

htmlspecialchars должно быть достаточно. Но не забудьте установить третий параметр (charset) в набор символов, соответствующий строковой кодировке.

Например:

function html_special_chars($str) { return preg_replace(array('/&/', '/"/'), array('&', '"'), $str); }