Jump to content
renatorv

Quebrar string json que possui mais de um objeto

Recommended Posts

Tenho a seguinte string json: {
    "114":[
        {"ID":"4","FILIAL":"02","NUM_PEDIDO":"114","CODIGO_PRODUTO":"3531","DESCRICAO":"REFR COCA COLA 2L","QUANT":"3","PRECO_UNITARIO":"5.99","PRECO_TOTAL":"17.97","STATUS":"A"},
        {"ID":"5","FILIAL":"02","NUM_PEDIDO":"114","CODIGO_PRODUTO":"3532","DESCRICAO":"REFR COCA COLA 350ML","QUANT":"1","PRECO_UNITARIO":"2.35","PRECO_TOTAL":"1.35","STATUS":"A"},
        {"ID":"6","FILIAL":"02","NUM_PEDIDO":"114","CODIGO_PRODUTO":"2213","DESCRICAO":"ARROZ CRISTAL 5KG","QUANT":"2","PRECO_UNITARIO":"15.48","PRECO_TOTAL":"30.96","STATUS":"A"}
        ],
    
    "115":[
        {"ID":"1","FILIAL":"02","NUM_PEDIDO":"115","CODIGO_PRODUTO":"3531","DESCRICAO":"REFR COCA COLA 2L","QUANT":"3","PRECO_UNITARIO":"5.99","PRECO_TOTAL":"17.97","STATUS":"A"},
        {"ID":"2","FILIAL":"02","NUM_PEDIDO":"115","CODIGO_PRODUTO":"3532","DESCRICAO":"REFR COCA COLA 350ML","QUANT":"1","PRECO_UNITARIO":"5.99","PRECO_TOTAL":"17.97","STATUS":"A"},
        {"ID":"3","FILIAL":"02","NUM_PEDIDO":"115","CODIGO_PRODUTO":"2213","DESCRICAO":"ARROZ CRISTAL 5KG","QUANT":"2","PRECO_UNITARIO":"15.48","PRECO_TOTAL":"30.96","STATUS":"A"}
        ]
}

 

preciso quebrá-la em dois objetos e montar um html com esses dados, através de um loop pois podem vir mais de dois objetos. Alguém já enfrentou isso?

Share this post


Link to post
Share on other sites

para transformar a string em json usa o JSON.parse(strJson)

o valor q retornar usa um for in

for (var key in json) {
    console.log('value=' + json[key]);
}

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By ZeroEnd
      Boa tarde.
       
      Gostaria que me ajudassem em uma dúvida, pois estou aprendendo. 
      Tenho um arquivo com o seguinte código.
       
      Ex:
      <?php $dados = '{"nome":"Antonio", "endereco":"Rua que sobe e desce", "telefone": "+55 xx 9 9xxxx-xxxx"}'; $obj = json_decode($dados); echo "Nome: $obj->nome<br>"; echo "Endereço: $obj->endereco<br>"; echo "Telefone: $obj->telefone<br>";  
      Bom esse retorna: 
       
      Nome: Antonio
      Endereço: Rua que sobe e desce
      Telefone: +55 xx 9 9xxxx-xxxx
       
      Agora o problema que enfrento é que eu quero usar um arquivo .json externo, mas não sei o que fazer.
      ex:
      nome-do-arquivo.json
       
      {"nome":"Antonio", "endereco":"Rua que sobe e desce", "telefone": "+55 xx 9 9xxxx-xxxx"}  
      Como que eu faria para chamar o arquivo com php.
       
      Desde já agradeço pela ajuda.
    • By thiagocola
      Eu peguei esse JSON no site do iFood e estou com dúvida de como converter esses 8 números em Time (HH:mm).
      Já tentei timestamp mas 8 dígitos é muito pequeno e já tentei ticks.
      Estou usando C#.
       
      "openingHours": [
                        {
                          "dayOfWeek": "MONDAY",
                          "openingTime": 13500000,
                          "closingTime": 97140000
                        },
                        {
                          "dayOfWeek": "TUESDAY",
                          "openingTime": 13500000,
                          "closingTime": 97140000
                        },
                        {
                          "dayOfWeek": "WEDNESDAY",
                          "openingTime": 13500000,
                          "closingTime": 97140000
                        },
                        {
                          "dayOfWeek": "THURSDAY",
                          "openingTime": 13500000,
                          "closingTime": 97140000
                        },
                        {
                          "dayOfWeek": "FRIDAY",
                          "openingTime": 13500000,
                          "closingTime": 97140000
                        },
                        {
                          "dayOfWeek": "SATURDAY",
                          "openingTime": 13500000,
                          "closingTime": 97140000
                        },
                        {
                          "dayOfWeek": "SUNDAY",
                          "openingTime": 13500000,
                          "closingTime": 97140000
                        }
                      ]
       
      Estou achando que tenho que fazer algum tipo de multiplicação ou em última hipótese, esse valor é algum identificador interno do sistema deles.
       
      Tentei converter assim:
       
      DateTime dtDateTime = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc);
       
      var openingTime = dtDateTime.AddSeconds(13500000).ToLocalTime();
      // {06/06/1970 03:00:00}
       
      var closingTime = dtDateTime.AddSeconds(97140000).ToLocalTime();
      // {29/01/1973 05:20:00}
       
      Mas os valores que retornam não fazem sentido pra mim.
       
    • By Marcos PP
      Tenho que retornar os dados desta URL e transformar em variaves em PHP

      Ja tentei alguns exemplos mas so me retorna Null

      http://betontec.fortiddns.com:8082/api/login?usuario=joeliton&senha=123

       
      $data = file_get_contents('http://betontec.fortiddns.com:8082/api/login?usuario=joeliton&senha=123'); $data = json_decode($data,true); var_dump($data);  
    • By robertdccaetano
      Pessoal boa tarde, tenho uma dúvida em relação a um problema que estou enfrentando aqui no php ao codificar, podem me ajudar por favor?
       
      É o seguinte, precisava passar dois objetos para o json_encode(), e capturar o atributo "nome" deles num fragmento, porém o callBack passando pelo json_encode está levando só um objeto, observem o print por favor.
       
      Obs: Ja iterei pelo foreach, mas mesmo assim está passando só um objeto pelo encode 



    • By Guilherme Luiz
      Olá pessoal,
       
      Estou com uma pequena dúvida em relação a buscar dados em json no MySQL.
      No meu banco eu tenho uma table com o seguinte campo em json.
       
      table - contacts
      column - groups_id
       
      Na coluna groups_id eu armazeno ids de grupos em json por exemplo:
      ["252","222","666"]  
      Quando eu realizo a seguinte query
      SELECT * FROM user_contacts WHERE JSON_CONTAINS(group_id, '["252"]')  
      Beleza... Ele me resulta em todos os contatos que possuem o registro 252.
      O que acontece é que essa table é 1 > N, ou seja, um contato pode fazer parte de vários grupos, sendo assim:
       
      quando eu consulto
      SELECT * FROM user_contacts WHERE JSON_CONTAINS(group_id, '["252","222"]') Ele não me resulta nos contatos que estão com grupo 252 ou 222.
      Ele me resulta nos contatos que estão com o grupo 252 e 222, ou seja, ele me retorna somente os contatos que o group id tenha ["252","222"]
       
      Eu vi que nessa situação eu poderia criar um INDEX na minha tabela usando:
      ALTER TABLE user_contacts ADD INDEX groups ( (CAST(group_id->'$.groups' AS UNSIGNED ARRAY)) );  
      Mas o CAST() na versão que Mysqli que eu possuo no servidor 4.6.X me retorna Syntax error.
      Alguem teria uma sugestão ou luz de qual caminho posso seguir nessa situação sem que seja atualizando a versão do bd?
       
       
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.