I have a nested array that I converted to JOSN using json_encode(), and when I tried to convert it back to an array form using json_decode() the returned result was empty.
$arr = json_decode($json,true);
below is the result of print_r for the json variable:
[{
"result":"SUCCESS",
"msg":{
"type":"localScan",
"res":{
"status":"0",
"scan":[
{
"name":"AVG",
"result":"0",
"type":"Clean"
},{
"name":"ESET NOD32",
"result":"2",
"type":"Not Working"
},{
"name":"AVAST",
"result":0,
"type":"Clear"
},{
"name":"Kaspersky",
"result":"2",
"type":"Not Working"
},{
"name":"Bit-defender",
"result":"2",
"type":"Not Working"
}
]
}
}
},{
"result":"SUCCESS",
"msg":{
"type":"localScan",
"res":{
"status":"1",
"scan":[{
"name":"AVG",
"result":"1",
"type":"Autorun"
},
{
"name":"ESET NOD32",
"result":"2",
"type":"Not Working"
},
{
"name":"AVAST",
"result":2,
"type":"Not Working"
},
{
"name":"Kaspersky",
"result":"2",
"type":"Not Working"
},
{
"name":"Bit-defender",
"result":"2",
"type":"Not Working"
}
]
}
}
}]
This is a partial array that is used to create the JSON, the json_decode function return value is FALSE.
Array (
[0] => Array (
[result] => SUCCESS
[msg] => Array (
[type] => localScan
[res] => Array (
[status] => 0
[scan] => Array (
[0] => Array (
[name] => AVG
[result] => 0
[type] => Clean
)
[1] => Array (
[name] => ESET NOD32
[result] => 2
[type] => Not Working
)
[2] => Array (
[name] => AVAST
[result] => 0
[type] => Clear
)
[3] => Array
(
[name] => Kaspersky
[result] => 2
[type] => Not Working
)
[4] => Array (
[name] => Bit-defender
[result] => 2
[type] => Not Working
)
)
)
)
)
)
var_dump($arr);to see what you are getting actually.die()'d script afterjson_encode?