aniltonf
(usa Ubuntu)
Enviado em 15/12/2014 - 11:05h
Ola... preciso de uma ajuda aqui..
Eu tenho um codigo que vai buscar uma string XML, mas preciso depois dos valores individuais para manipulacao... Ja vi varios documentos e dicas, mas nao me ajudam com aquelas funcoes e classes tipo xml2array, etc. nnehum funcionou...
Entao estou fazendo isso usando simpleXMLElement, mas nao consigo chegar aos valores, porque nao consiguo entrar no TAG <env:Body>...
O Codigo
<?php
// string XML recebido
$xmlString =
'<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getModuleListResponse xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<moduleList>
<moduleListEntry>
<slotId>1</slotId>
<modules>
<module>A</module>
</modules>
<moduleType>asi</moduleType>
<cardId>32</cardId>
<direction>input</direction>
<hardwareVersion>1.0</hardwareVersion>
<numPorts>3</numPorts>
<swVer>1.06.3000</swVer>
<bootVer>1.0.1784</bootVer>
<serial>62600124</serial>
<cardWidth>2</cardWidth>
<present>1</present>
<ddmOptions>
<ciOption>1</ciOption>
<rfOption>1</rfOption>
<hpOption>0</hpOption>
<stereoOption>none</stereoOption>
</ddmOptions>
</moduleListEntry>
</moduleList>
</getModuleListResponse>
</env:Body>
</env:Envelope>';
// nao e possivel executar o str_replace, para eliminar a tag indesejada...
//$sxe = str_replace("<env:Body>", "", $sxe);
//$sxe = str_replace("</env:Body>", "", $sxe);
// se for eliminado <env:Body> os campos funcionam, se nao, diz que...
// Notice: Trying to get property of non-object in /var/www/html/cvt/teste2.php on line 86
echo $sxe->getModuleListResponse->code;
?>
Ajuda por favor...