我有一个正确的.json
物理文件,我通过解析它从PHP中读取它。
假设sales.json
包含:
{
"custid" : "7761",
"items" : [
{
"itemcode" : "A11231G",
"suppliers" : [
{
"id" : "s10001",
"name" : "Benny & John",
},
{
"id" : "s10004",
"name" : "Colorado Dimension",
}
]
}
]
}
然后我从PHP中使用它:
$sales = json_decode( file_get_contents("store/sales.json"), true );
没有问题,$sales
已经成为一个没问题的数组。
现在由于某种原因,我想用PHP数组(而不是json_decode()
物理文件)提供.json
函数。
我知道这实际上就像转换一样愚蠢,Array
- > json
- > Array
,最后是Array
到Array
。
但无论出于何种原因,
json_encode($phpArray)
,然后以json_decode( json_encode($phpArray), true )
方式提供,它会给出确切的对象我来自json_decode("sales.json")
档案?json_decode
对象提供Array()
函数?答案 0 :(得分:2)
实际上,json_decode返回一个STD对象,而不是一个数组。要从JSON字符串中获取数组,您需要使用json_decode($string, true)
。