Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom dia, estou com um problema para ler xml e não sei mais onde procurar...
O problema é o segunite: Tenho dois sistemas que leem um XML através da função simplexml_load_string() que funcionavam perfeitamente até quinta passada....
Essa semana os dois sistemas pararam de funcionar exatamente na msm linha, a linha da função.
Já vi no phpinfo() se a função está ativa e ela está, usei o function exists('simplexml_load_string') e retorna true.
Até encontrei que a partir da versão 5.2 do php, que é a função que é a versão que eu uso, já vem com simplexml do núcleo da linguagem.
Alguém já passou por um prblema desses?
OBS: consigo imprimir em um arquivo o conteudo do xml normalmente.
>
Nunca tive problemas deste tipo, mas acredito que talvez se forneçer o código do script posso ajudá-lo, talvez na verdade o erro esteja em outra linha. Aconteçe muito. ;)
O código é este:
$fp = file_get_contents($url.$dados);
$fp = base64_decode($fp);
$xml = simplexml_load_string($fp);
Os dados estão vindo normamente no file_get_contents e se manda imprimir em um arquivo txt o conteudo de $fp ele tbm escreve normalmente e na linha: $xml = simplexml_load_string($fp); o sistema para e não responde nd.
>
>
Nunca tive problemas deste tipo, mas acredito que talvez se forneçer o código do script posso ajudá-lo, talvez na verdade o erro esteja em outra linha. Aconteçe muito. ;)
O código é este:
$fp = file_get_contents($url.$dados);
$fp = base64_decode($fp);
$xml = simplexml_load_string($fp);
Os dados estão vindo normamente no file_get_contents e se manda imprimir em um arquivo txt o conteudo de $fp ele tbm escreve normalmente e na linha: $xml = simplexml_load_string($fp); o sistema para e não responde nd.
Estive fazendo mais alguns testes e percebi que quando tento atribuir o resultado de simplexml_load_strin($xml) a alguma variável o sistema para e fazendo um if simples somente deste jeito:
if(simplexml_load_string($xml)){
echo 'ok';
}else{
echo 'erro';
}
o sistema responde com ok.
e fazendo o seguinte:
if($a = simplexml_load_string($xml)){
echo 'ok';
}else{
echo 'erro';
}
não da nenhum resposta.
Problema, resolvido.
O responsável pela TI da empresa onde o sistema está hospedado tinha comentado a linha que carregava a simplexml
Nunca tive problemas deste tipo, mas acredito que talvez se forneçer o código do script posso ajudá-lo, talvez na verdade o erro esteja em outra linha. Aconteçe muito. ;)