2012-03-18 22 views
11

Utilizo DOMDocument para editar algunos archivos HTML, pero algunos de los temas tienen espacios en sus nombres. Entonces, DOMDocument cambia automáticamente los espacios a% 20 y luego no puede encontrarlos.Error DOMDocument de PHP Entidad 'nbsp' no definida

Así es como se ve el error exactamente:

Warning: DOMDocument::load() [domdocument.load]: Entity 'nbsp' not defined in file:///C:/Path/To/The/File/01%20c%2040-1964.html, line: 11 in C:/Path/To/class.php on line 51 

¿Te knouw cómo reparar este error?

Gracias de antemano por las respuestas

+0

Si no se carga pero anexa datos XML y aparece este error, hay una pregunta relacionada: [DOMDocument appendXML con caracteres especiales] (http://stackoverflow.com/q/4645738/367456) – hakre

Respuesta

13

Use DOMDocument::loadHTMLFile() en lugar de load(). Para eso está hecho. HTML no es XML

XML no conoce la entidad con nombre  . Sin embargo, si usa loadHTML, el analizador XML obtendrá las entidades con nombre HTML cargadas para que el error desaparezca.

Ver también: XML parser error: entity not defined.

+0

Tengo XML con etiquetas HTML no insertado correctamente en él. Quiero cargarlo usando load(), porque es XML. ¿Qué puedo hacer con eso? – mrarm

Cuestiones relacionadas