Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

Crear un archivo XML

Estas en el tema de Crear un archivo XML en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Hola a todos. Estoy tratando de crear un archivo XML con la información que me devuelve un webservice, esta información la tengo metida en una ...
  #1 (permalink)  
Antiguo 03/04/2009, 04:29
 
Fecha de Ingreso: marzo-2009
Mensajes: 9
Antigüedad: 15 años, 2 meses
Puntos: 0
Crear un archivo XML

Hola a todos.
Estoy tratando de crear un archivo XML con la información que me devuelve un webservice, esta información la tengo metida en una variable y a partir de ahi debo generar el fichero XML, alguien me puede explicar un poco como hacerlo?La verdad que no debe ser demasiado complicado, y mas cuando soy capaz de leer un xml y hacer lo que quiero con sus datos, lo que me falta es poder crear el xml a partir de los datos que tengo en una variable.
de momento tengo algo asi:


<?php

require_once('nusoap.php');

$parametros=Array( 'Olvido','Olvid','','280','3a'); //parametros de la llamada
$client = new SoapClient("URL?wsdl", $parametros);
$result=$client->call('ObtenerMarcas',$parametros);
var_dump($result);//Vemos lo que hay en result
?>

en $result es donde se deberia guardar la informacion que devuelve el webservice, sin embargo al ejecutar el fichero.php lo único que me sale es bool(false) en el var_dump

Alguien me puede ayudar?
gracias de antemano
  #2 (permalink)  
Antiguo 03/04/2009, 09:15
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Crear un archivo XML

Si te dice false es que tuvo un problema al hacer el llamado al WebService.

Por otro lado crear un XML es sencillo, solamente lo imprimes:
Código php:
Ver original
  1. <?php
  2. header( "Content-type: text/xml" );
  3. ?>
  4. <?xml version="1.0" encoding="UTF-8"?>
  5. <tests>
  6.        <test><?php echo $algo; ?></test>
  7. </tests>

Saludos.
  #3 (permalink)  
Antiguo 13/04/2009, 06:00
 
Fecha de Ingreso: marzo-2009
Mensajes: 9
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Crear un archivo XML

Si, eso esta muy bien para crear el archivo 'A mano' pero lo que yo tengo es un String con formato XML guardado en una variable. intento hacer algo asi. siendo result la variable que contiene el String con formato XML

$fp=fopen('prueba.xml',"w");
fwrite($fp,$result);
fclose($fp);


Otra cosa que me hace sospechar es que si hago echo $result no me imprime string con formato XML, sino que simplemente imprime 'Array', sin embargo si hago print_r($result) obtengo:
  #4 (permalink)  
Antiguo 13/04/2009, 12:28
 
Fecha de Ingreso: enero-2005
Mensajes: 149
Antigüedad: 19 años, 4 meses
Puntos: 2
Supongo que esto te servirá:
http://devzone.zend.com/node/view/id/651
Un saludo !

Otro gran ejemplo

http://www.phpro.org/classes/PHP-Rec...-With-DOM.html

Última edición por GatorV; 19/04/2009 a las 15:07
  #5 (permalink)  
Antiguo 18/04/2009, 19:19
Avatar de jayjayjay_92  
Fecha de Ingreso: octubre-2008
Mensajes: 77
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Crear un archivo XML

Tiene que ser con una clase por algun motivo en especial?

Porque veo mucho más facil hacerlo con una funcion adaptando lo que dice gatorV usando un foreach.

Sin animo de ser maleducado ni nada creo que se tiende a usar (en general) clases para hacer las cosas más complicadas pensando que así son más simples...
  #6 (permalink)  
Antiguo 19/04/2009, 09:27
 
Fecha de Ingreso: enero-2005
Mensajes: 149
Antigüedad: 19 años, 4 meses
Puntos: 2
Yo para nada me ofendo, esto es un foro... cada uno opina

Eso depende de tus necesidades.

Si la aplicación tiene algo de fundamento, algo de peso, algo de complejidad. Te aseguro te será más sencillo mantenerla con clases y OO que con scripts sueltos.

Mmmm... Aquí tienes las referencias a la documentación relativa al XML propia del lenguaje, y las mismas usan clases:
http://es.php.net/manual/es/refs.xml.php

Mirate, lee un poco SimpleXML o XMLWritter o XMLReader y si sigues pensando que estas clases no te solucionan la vida con XML en gran parte... Pues entonces... tendrás que seguir generando y concatenando, embediendo strings para crear tus XML. Lo cual te llevará crear x número de procedimientos. O bién usar funciones de cadena (strings). Mmmm O ya como última instancia a lo rudimentario, hacer tus XML caracter a caracter.

-------

Usar las clases internas de PHP no es tan complicado, solo tienes que instanciarlas y usarlas.

Si usas un IDE para PHP(Zend Studio for Eclipse) y no un editor de texto, este te sugerirá los miembros del objeto "$clase" y si alguno no lo sabes usar, para eso está la referencia de PHP que los lista y describe Todos. Mmmm... y a las malas... está el foro.

Otra cosa no... pero enlaces a tutoriales tengo pa aburrir. xD

Miraos el apartado "Create a SimpleXMLElement" de este tutorial... http://www.phpro.org/tutorials/Intro...-With-PHP.html

tan solo 7 lineas crean el archivo xml... A mi me parece bién sencillo. Si a ti no, dinos por que.

Un saludo ; )

Última edición por GatorV; 19/04/2009 a las 15:07
  #7 (permalink)  
Antiguo 19/04/2009, 16:15
Avatar de jayjayjay_92  
Fecha de Ingreso: octubre-2008
Mensajes: 77
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Crear un archivo XML

estamos de acuerdo en que son necesarias las clases para programación compleja, el tema es que cada uno aqui por un lado, yo digo que para generar xml es más complejo.

Para leer es diferente, es mucho más complejo.

PD: para generar he mirado lo de xml writer muy por encima he llegado a la conclusión de que tardo más en mirar la documentación que en programarlo yo mismo sin ninguna clase.

Última edición por jayjayjay_92; 19/04/2009 a las 16:23
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 09:47.