Foros del Web » Programando para Internet » PHP »

PHP vs XML

Estas en el tema de PHP vs XML en el foro de PHP en Foros del Web. Hola amigos, alguien me puede orientar sobre como capturar datos de xml ---- transformarlos (esto ya es osa mia) y actualizar/crear el xml ?...
  #1 (permalink)  
Antiguo 01/04/2005, 05:35
 
Fecha de Ingreso: agosto-2003
Mensajes: 198
Antigüedad: 14 años, 3 meses
Puntos: 10
PHP vs XML

Hola amigos,
alguien me puede orientar sobre como capturar datos de xml
---- transformarlos (esto ya es osa mia)
y actualizar/crear el xml ?
  #2 (permalink)  
Antiguo 01/04/2005, 05:48
 
Fecha de Ingreso: agosto-2003
Ubicación: Islas Canarias - Gran Canaria -
Mensajes: 59
Antigüedad: 14 años, 4 meses
Puntos: 0
Yo también tengo la misma duda:

Resulta que quiero obtener los datos de un fichero XML (es mi primera vez), cuya estructura puede ser tan sencilla como esta:


Código:
 



<LENGUAJE> 
                <IDIOMA>spanish</IDIOMA> 
                <DICCIONARIO> 
                                      <PALABRA>table</PALABRA> 
                                      <SIGNIFICADO>mesa</SIGNIFICADO> 
                </DICCIONARIO> 
</LENGUAJE>

¿Cómo se hace?

Saludos y gracias
  #3 (permalink)  
Antiguo 01/04/2005, 06:22
 
Fecha de Ingreso: agosto-2003
Mensajes: 198
Antigüedad: 14 años, 3 meses
Puntos: 10
Pues yo en esta pagina:xml-encode
encontre este ejemplo para crear un xml, pero lo puse a ejecutar y me da error de que no encuentra la funcion.
Seguimos buscando, seguimos en contacto.
  #4 (permalink)  
Antiguo 04/04/2005, 17:34
 
Fecha de Ingreso: agosto-2003
Ubicación: Islas Canarias - Gran Canaria -
Mensajes: 59
Antigüedad: 14 años, 4 meses
Puntos: 0
Hola, creo que ya lo solucioné, aunque me imagino que por ahí habrá funciones con mayores prestaciones que las que he usado yo. Bueno, para los que en un futuro tenga el mismo problema que yo, con analizar despacio este código lo entenderán rápido:


Código:
    $file = "spanish.xml";        // fichero con el cuerpo en xml

    // Acción que hace cuando encuentra la primera etiqueta de un elemento.
    function start_element_handler($parser, $name, $attribs)
    {
       echo "Elemento Ini: ".$name."<BR>";
       echo "Atributos: <br>";
       while(list($key,$value)=each($attribs))
           echo "Key= ".$key." Value= ".$value."<br>";
    }



    // Acción para cuando encuentre el final de una etiqueta de un elemento.
    function end_element_handler($parser, $name)
    {    echo "Elemento Fin: ".$name."<BR>";
    }


    // Recuperar un dato.
    function character_data_handler($parser, $data)
    {
       echo "<BR>Dato: <B>".$data."</b><BR>";
    }


    $xml_parser = xml_parser_create('');

    xml_parser_set_option($xml_parser, XML_OPTION_CASE_FOLDING, 0);

    xml_set_element_handler($xml_parser, "start_element_handler", "end_element_handler");
    xml_set_character_data_handler($xml_parser, "character_data_handler");

    if(!file_exists($file))
       die("\n<p>\"$file\" does not exist.</p>\n</body>\n</html>");

    if(!($handle = fopen($file, "r")))
       die("<p>Cannot open \"$file\".</p>\n</body>\n</html>");

    while($contents = fread($handle, 4096))
       xml_parse($xml_parser, $contents, feof($handle));

    fclose($handle);

    xml_parser_free($xml_parser);
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:18.