1

I know this is rather simple but I'm stuck at it and I'd really like some help

Here's a JSON string I'm generating.

[{"field1":3,"field2":"5","field3":"value3","field4":"value4"},{"field1":3,"field2":"8","field3":"value3","field4":"value4"},{"field1":3,"field2":"6","field3":"value3"}]

How do I extract the value associated with field1?

And how do I access elements of each of the distinct arrays?

Anon
  • 845
  • 5
  • 30
  • 50

7 Answers7

4

try this code

$jsonString = '[{"field1":3,"field2":"5","field3":"value3","field4":"value4"},{"field1":3,"field2":"8","field3":"value3","field4":"value4"},{"field1":3,"field2":"6","field3":"value3"}]';

$json = json_decode($jsonString, true);

print_r($json);
Janak Prajapati
  • 896
  • 1
  • 9
  • 36
2

Try this (in Javascript)

var jsonData=[{"field1":3,"field2":"5","field3":"value3","field4":"value4"},{"field1":3,"field2":"8","field3":"value3","field4":"value4"},{"field1":3,"field2":"6","field3":"value3"}];

if you get response as text then use jsonData=JSON.parse(yourResponseText);

for(var i=0;i<jsonData.length;i++){
alert('your required val:'+jsonData[i].field1);
}

In php

$data = json_decode($json);//$json is your json data

foreach ($data as $item) {
  echo $item->field1
}
Anand Jha
  • 10,404
  • 6
  • 25
  • 28
1

https://stackoverflow.com/a/3627901/485790

console.log(jQuery.parseJSON(' [{"field1":3,"field2":"5","field3":"value3","field4":"value4"},{"field1":3,"field2":"8","field3":"value3","field4":"value4"},{"field1":3,"field2":"6","field3":"value3"}]').field1);
Community
  • 1
  • 1
Vojtiik
  • 2,558
  • 1
  • 17
  • 21
1

In php way

$jsonString = '[{"field1":3,"field2":"5","field3":"value3","field4":"value4"},{"field1":3,"field2":"8","field3":"value3","field4":"value4"},{"field1":3,"field2":"6","field3":"value3"}]';

$json = json_decode($jsonString, true);

foreach($json as $item){
   echo $item['field1'];
}
Chokchai
  • 1,684
  • 12
  • 12
1

In php you can:

$json = json_decode($_GET['variable'];

http://php.net/manual/en/function.json-decode.php

Developerium
  • 7,155
  • 5
  • 36
  • 56
1

try this,

var json = '[{"field1":3,"field2":"5","field3":"value3","field4":"value4"},{"field1":3,"field2":"8","field3":"value3","field4":"value4"},{"field1":3,"field2":"6","field3":"value3"}]';
    $.each(jQuery.parseJSON(json), function () {
        alert(this['field1']);
        alert(this['field2']);
        alert(this['field3']);
        alert(this['field4']);

});
Manish Sharma
  • 2,406
  • 2
  • 16
  • 31
1

this is a simple array of json objects. so with jquery

var jsonArray = JSON.parse("your string");
   for(var int i=0 ; i < jsonArray.length() ; i++){
     var jsonObject = jsonArray[i];
     Console.log(jsonObject.field1)
   }
Pankaj Sharma
  • 1,833
  • 1
  • 17
  • 22