2015-03-13 91 views
-1

我试图解码一个json数据集与许多具有相同名称,但与多个不同值配对的entires。json_decode在PHP中与多个相同的名称,但不同的值

实施例:

{"id":"XXX", 
"price":"XXX", 
"size":"XXX", 
"id":"YYY", 
"price":"YYY", 
"size":"YYY"} 

我没有问题建立一个数组当存在由这样做对于每个名称只有一个值:

$array = json_decode($array4,true); 

PHP数组:

array(3) { 
["id"]=> string(3) "XXX" 
["price"]=> string(3) "XXX" 
["size"]=> string(3) "XXX" 
} 

但是当我尝试使用整个文件的内容~4000个不同的值和~4个名字之间的配对时,我得到了一个响应o f NULL当我想要json_decode是这样的:

array(3) { 
["id"]=> string(3) ("XXX","YYY") 
["price"]=> string(3) ("XXX","YYY") 
["size"]=> string(3) ("XXX","YYY") 
} 

任何人都可以帮忙吗?

+1

带重复键的JSON本身无效。你对JSON的构建有任何控制吗? – 2015-03-13 19:45:34

+0

你是对的。我发布了一个答案。 :) – 2015-03-13 19:49:16

回答

1

更新:我需要正确构建json输入。 如下所示:

{"data":[ 
{"id":"XXX","price":"XXX","size":"XXX"}, 
{"id":"YYY","price":"YYY","size":"YYY"}] 
} 

然后json_decode的效果很好。

相关问题