Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] PHP OO Leer XML (CDATA[ ] ) y almacenar en variables php desde Soapclient

Estas en el tema de Leer XML (CDATA[ ] ) y almacenar en variables php desde Soapclient en el foro de PHP en Foros del Web. Hola que tal, tengo problema y me gustaría que me ayudaran, lo que pasa es que por medio de soapclient en un webservice en php, ...
  #1 (permalink)  
Antiguo 13/11/2015, 10:39
 
Fecha de Ingreso: febrero-2015
Mensajes: 9
Antigüedad: 9 años, 2 meses
Puntos: 0
Pregunta Leer XML (CDATA[ ] ) y almacenar en variables php desde Soapclient

Hola que tal, tengo problema y me gustaría que me ayudaran, lo que pasa es que por medio de soapclient en un webservice en php, obtenía valores de un xml, y almacenaba en variables: así:

Código PHP:
$parametros= array ('parametros' => valor);
 
$conexion = new SoapClient($url);
$XML=$conexion->funcionwebservice($parametros); 
$variableconvalornodo1=$xml->nodo1->valor
Pero ahora en otro Web service me devuelve el xml con un CDATA y no puedo acceder para guardar los valores en el XML, agradeceria si alguien puede decirme como hacerle. Gracias de antemano

Código:
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"> 
<S:Body>
 <ns2:funcionwebservice xmlns:ns2="http://webservices/">
 <return>
<![CDATA[<xml><quieroestevalor>valor</quieroestevalor><tambiéneste>valor</tambiéneste>
</xml>]]>
</return>
 </ns2:funcionwebservice > 
</S:Body> 
</S:Envelope>
cabe resaltar que ya ocupe 'SimpleXMLElement' y LIBXML_NOCDATA y no me funciono. Gracias
  #2 (permalink)  
Antiguo 13/11/2015, 17:04
 
Fecha de Ingreso: febrero-2015
Mensajes: 9
Antigüedad: 9 años, 2 meses
Puntos: 0
Respuesta: Leer XML (CDATA[ ] ) y almacenar en variables php desde Soapclient

SOLUCION
regreso el nodo padre de la funcion del WebService:

Código PHP:
   $xml3 $xml->return
después busco el valor <!DATA[ y lo remplazo por espacio vacio y también ]] donde cierra
Código PHP:
  $xml2=str_replace("<![cdata["," ",$nodo);    
  
$xml1=str_replace("]]"," ",$xml2); 
luego lo convierto a un nuevo xml y accedo a su valor
Código PHP:
  $xml=simplexml_load_string($xml1);
  
$valor=$nodo->valor
LISTO no se sea lo correcto pero si lo funcional
  #3 (permalink)  
Antiguo 20/03/2016, 13:06
 
Fecha de Ingreso: marzo-2016
Ubicación: EC
Mensajes: 3
Antigüedad: 8 años, 1 mes
Puntos: 0
Pregunta Respuesta: Leer XML (CDATA[ ] ) y almacenar en variables php desde Soapclient

Estoy utilizando la siguiente linea para abir el archivo:
Código HTML:
$xml = simplexml_load_file("file.xml", NULL, LIBXML_NOCDATA);
Pero no tengo resultados.
Cual función se debe utilizar para abrir?

Etiquetas: servicios-web, soap, webservice, xmlhttprequest
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 01:19.