Aquí una función php que utilizo al generar archivos XML, para «limpiar» cadenas de texto con caracteres no permitidos en XML como «<", ">«, «&», «‘». Usando arrays para guardar las cadenas a reemplazar con str_replace():
function limpioCaracteresXML($cadena){ $search = array("<", ">", "&", "'"); $replace = array("<", ">", "&", "&apos"); $final = str_replace($search, $replace, $cadena); return $final; }
Un ejemplo de uso al generar el xml:
<title><?php echo limpioCaracteresXML($titulo); ?></title> <pubDate><?php echo date("D, d M Y H:i:s O", $fecha)?></pubDate> <link><?php echo limpioCaracteresXML($link)?></link> <description><?php echo limpioCaracteresXML($descripcion); ?></description> <category><?php echo limpioCaracteresXML($categoria); ?></category> </item>
Agradezco tu comentario 🤘