Estoy empezando con los XMLs ya que tengo que migrar una aplicación hecha con php4 a php5 que guarda toda la información en xmls.
Llevo días mirando de solucionar los problemas y cada vez estoy más confusa, a ver si me podéis echar una mano.
Para el tratamiento de los xml tengo 2 clases, la XMLTree que lee el archivo y la XMLNode que crea los nodos. Mi problema reside en la clase XMLTree
Aquí está el constructor de XMLTree:
Código PHP:
function XML_Tree($sFile)
{
$sFileCont = join(file($sFile), "");
$rPar = xml_parser_create("UTF-8");
xml_parser_set_option($rPar, XML_OPTION_CASE_FOLDING, 0);
xml_parser_set_option($rPar,XML_OPTION_TARGET_ENCODING, "UTF-8");
xml_set_object($rPar, $this);
xml_set_element_handler($rPar, "_startElementHand", "_endElementHand");
xml_set_character_data_handler($rPar, "_CDataHand");
xml_set_default_handler($rPar, "_defaultHand");
xml_parse($rPar, $sFileCont, true)
or user_error(xml_error_string(xml_get_error_code($rPar)). ' line:' . xml_get_current_line_number($rPar) . ' column:' . xml_get_current_column_number($rPar) . "<br />The file $sFile has invalid syntax", E_USER_WARNING);
}
También he visto que no me lee bien las palabras de la información xml de tal manera que en la función _CDataHand me lee las palabras con accentos en dos partes por ejemplo: Català me lee un data como Catal y otro como à.
He estado mirando documentación de php, en google, foros, manuales... pero en todos sitios me habla de la magnífica clase que exíste para php5 SIMPLEXML pero no me hablan de que haya ninguna diferencia entre xml_set_default_handler de php4 y de php5, ni siquiera en php.net.
¿Alguién puede indicarme el motivo del error o orientarme donde buscar información? ¿Pq se comportan diferente en las versiones de php?
Mi problema también reside en mi inexperiencia y en que no entiendo como funciona el tratamiento de los XML ya que por mucho que me lea la documentación de la página oficial de php no me aclaro.
¿Alguien me puede recomendar algún manual para "tontos"? (y no vale decir que php.net lo explica bien pq yo no me entero
![triste](http://static.forosdelweb.com/fdwtheme/images/smilies/frown.png)