Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

mruoppolo

Problemas para ler um json

Recommended Posts

Olá, tudo bem?

Estou puxando os resultados de alguns concursos da LotoFácil através de um webservice que encontrei na internet, no caso, estou tendo o seguinte problema, o resultado da minha consulta ao webservice é este aqui:

{"concurso":{"numero_sorteio":"951","premio_acumulado":false,"data":"30\/08\/2013","local":"PRESIDENTE VENCESLAU\/SP","total_arrecadado":false},"sorteio":{"ordem_sorteio":[],"ordem_crescente":["03","07","08","09","10","13","14","15","17","19","20","21","22","23","25"]},"rateio":{"pontos_15":{"ganhadores":"1","premio":"1.307.191,51"},"pontos_14":{"ganhadores":"531","premio":"1.082,08"},"pontos_13":{"ganhadores":"19.677","premio":"12,50"},"pontos_12":{"ganhadores":"259.631","premio":"5,00"},"pontos_11":{"ganhadores":"1.345.575","premio":"2,50"}},"proximo":{"data":false,"premio_estimado":false,"numero_sorteio":952},"ganhadores":{"por_estado":{"BA":"1"},"por_cidade":[]}}

Eu criei esta função para efetuar a leitura:

<?php
$curl = curl_init("http://wsloterias.azurewebsites.net/api/sorteio/getresultado/3");
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$json = curl_exec($curl);
curl_close($curl);

$jsonObj = json_decode($json);

$concurso = $jsonObj->concurso;
foreach ( $concurso as $e )
{
	echo "Concurso: $e->numero_sorteio - Data: $e->data"; 
}

Porém quando executo o código, eu tenho este erro aqui:

Warning: Invalid argument supplied for foreach() in C:\xampp\htdocs\plugins\wp-content\plugins\loteria-webservice\index.php on line 31

O que pode estar acontecendo? Obrigado :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

Seu json, em concurso, não é um array.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Veja o resultado de var_dump($jsonObj->concurso). Depois veja o que você quer imprimir do json.

Em suma, um json é transformado em uma stdClass. Pode ser transformado em array usando json_decode($json , true). Mas não mudaria o tipo do valor na chave 'concurso'.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.