Ir para conteúdo

Arquivado

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

rodrigo antonio  cruz

Buscar resultado específico dentro de um índice, array

Recommended Posts

Olá venho pedir ajuda dos amigos, estou pegando de uma url externa com uma consulta este Array de apenas 1 índice, estou querendo somente extrair deste índice o item resposta : Sim, ou seja somente o resultado da resposta o Sim, mas não estou conseguindo de modo algum, sou novo em php, peço desculpas pela minha ignorância!

Array ( [0] => 0 ) Array ( [0] => {"status":1,"data":1,"doc":[{"codigo":"213645459","dh_entrada":"2017-05-18
10:35:16","status":"RECEBIDO","destino_celular":"51991855248","resposta":"Sim"}]} )

Compartilhar este post


Link para o post
Compartilhar em outros sites

O "Sim" é um valor da propriedade "resposta", então você tem que informar essa chave de alguma forma.

 

Como o retorno parece ser em JSON, dá uma olhada no json_decode(), acho que resolve no seu caso.

 

Algo assim (não testei):

 

$json = '{"status":1,"data":1,"doc":[{"codigo":"213645459","dh_entrada":"2017-05-18
10:35:16","status":"RECEBIDO","destino_celular":"51991855248","resposta":"Sim"}]}'

$retorno = json_decode($json);
echo $retorno->doc[0]->resposta;

Dá uma olhada aqui também: http://stackoverflow.com/questions/29308898/how-do-i-extract-data-from-json-with-php

Compartilhar este post


Link para o post
Compartilhar em outros sites
Em 2017-5-19 at 14:02, navegantenarede disse:

O "Sim" é um valor da propriedade "resposta", então você tem que informar essa chave de alguma forma.

 

Como o retorno parece ser em JSON, dá uma olhada no json_decode(), acho que resolve no seu caso.

 

Algo assim (não testei):

 


$json = '{"status":1,"data":1,"doc":[{"codigo":"213645459","dh_entrada":"2017-05-18
10:35:16","status":"RECEBIDO","destino_celular":"51991855248","resposta":"Sim"}]}'

$retorno = json_decode($json);
echo $retorno->doc[0]->resposta;

Dá uma olhada aqui também: http://stackoverflow.com/questions/29308898/how-do-i-extract-data-from-json-with-php

 

Olá amigo muito obrigado pela ajuda, mas eis uma  dúvida, e se eu receber um array com vários índices? como ficaria?

por exemplo:

stdClass Object ( [status] => 1 [data] => 2 [doc] => Array ( [0] => stdClass Object ( [codigo] => 213645459 [dh_entrada] => 2017-05-18 10:35:16 [status] => RECEBIDO [destino_celular] => 51991855248 [resposta] => Sim ) [1] => stdClass Object ( [codigo] => 214192762 [dh_entrada] => 2017-05-20 15:11:01 [status] => RECEBIDO [destino_celular] => 51998549737 [resposta] => Nao ) ) )

Tentei fazer um foreach e while, mas não obtive sucesso, desde já agradeço

Compartilhar este post


Link para o post
Compartilhar em outros sites
3 horas atrás, rodrigo antonio cruz disse:

 

Olá amigo muito obrigado pela ajuda, mas eis uma  dúvida, e se eu receber um array com vários índices? como ficaria?

por exemplo:


stdClass Object ( [status] => 1 [data] => 2 [doc] => Array ( [0] => stdClass Object ( [codigo] => 213645459 [dh_entrada] => 2017-05-18 10:35:16 [status] => RECEBIDO [destino_celular] => 51991855248 [resposta] => Sim ) [1] => stdClass Object ( [codigo] => 214192762 [dh_entrada] => 2017-05-20 15:11:01 [status] => RECEBIDO [destino_celular] => 51998549737 [resposta] => Nao ) ) )

Tentei fazer um foreach e while, mas não obtive sucesso, desde já agradeço

TÓPICO RESOLVIDO, ESTUDEI UM POUCO E RESOLVI! PRA QUEM PRECISAR O CODE ESTÁ ABAIXO

$retorno = json_decode($json_file);
$i=-1;
     while($i++ <= sizeof($retorno)){
     	   $retorna_data = $retorno->doc[$i]->dh_entrada;
	       $retorna_resposta = $retorno->doc[$i]->resposta;
           $retorna_celular  = $retorno->doc[$i]->destino_celular."<br/>";
     echo $retorna_data;
     echo $retorna_resposta;
     echo $retorna_celular;
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por ILR master
      Boa tarde, pessoal.
      Espero que todos estejam bem.
       
      Seguinte:
      Tenho a seguinte consulta:
       
      $usuarios= "SELECT * FROM usuarios";
      $query= mysqli_query($conexao, $usuarios) or die ("Usuário não encontrado");
      $usuario = mysqli_fetch_array($query);
       
      Quero pegar apenas o campo 'nome' da tabela 'usuarios' e colocar todos os resultados da seguinte forma:
       
      $nomes = array("Rafael", "João", "Maria", "Pedro", "Patricia", "Camila");
       
      Agradeço desde já.
      Abs
       
       
    • Por mateus.andriollo
      Existe uma forma de fazer um IF na select e comparar com Array de dados?
       
      algo como
       
      Select if( in_array(idCliente,'1,2,3,4,5')=true,'Tem','Não') ) as cliente Não consigo usar inner ou where pois esse array é algo q tem varias regras...
       
      Precisava saber se existe uma função assim em MySQL
    • Por mateus.andriollo
      Existe uma forma de fazer um IF na select e comparar com Array de dados?
       
      algo como
       
      Select if( in_array(idCliente,'1,2,3,4,5')=true,'Tem','Não') ) as cliente Não consigo usar inner ou where pois esse resultado do array é algo q tem varias regras...
       
      Precisava saber se existe uma função assim em MySQL
    • Por clovis.sardinha
      Bom dia.
      Meu problema é o seguinte:
      Estou fazendo uma tabela e preciso mostrar o usuário e várias cidades que pertencem a este usuário.
      O resultado do array é o seguinte:

      Quando passo para a tabela os valores de cidade se repetem para o mesmo usuário até o final e retorna fazendo o mesmo para o próximo usuário. 
      Veja abaixo

       
      Meu código para a tabela é a seguinte:
      <tr> <td align="left"><?php echo $usuario['nome'] ?></td> <td align="left"><?php echo $usuario['nome_orgao'] ?></td> <td align="left"><?php echo $usuario['nome_funcao'] ?></td> <?php foreach($destinos as $key=>$destino):?> <?php $key=0;?> <td align="left"> <?php foreach($destino as $chave=> &$cidade): ?> <?php echo $cidade['cid_nome']."-";?> <?php endforeach;?> </td> <?php $key+=$key; ?> <?php endforeach;?> <td><?php echo date('d/m/Y', strtotime( $usuario['created_at'])) ?></td> <td align="left"><a href="<?php echo base_url('UserAdmin/Usuario/getUsuarioById')."/".$usuario['id_user'] ?>">DETALHES</a></td> </tr> <?php endforeach ?> Onde estou errando? O que tenho de fazer para percorrer este array de modo a aparecer apenas as cidades pertencentes a cada usuário?

    • Por Giovanird
      Listo um array pelo foreach e preciso pegar os valores fora do foreach.
      Abaixo tenho o exemplo do foreach com os valores
       
      <?php foreach($turma $rsturma): if(($rsturma['id'] == 1){ echo $rsturma['nome']."<br>"; echo $rsturma['idade']."<br><br>"; } endforeach; //Dentro do foreach me retorna: Luis 13 Maria 12 Carlos 12 Matheus 14 Andréa 12 //Preciso pegar a posição e o valor desta lista $posicao1 = 1; $nome1 = Luis; $posicao2 = 2; $nome2 = Maria; $posicao3 = 3; $nome3 = Carlos; $posicao4 = 4; $nome4 = Matheus; $posicao5 = 5; $nome5 = Andréa;  
×

Informação importante

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