【发布时间】:2011-10-17 11:37:15
【问题描述】:
我有以下 json,我通过 AJAX 发送,但在服务器端 json_decode 返回一个空数组。我也在发送不同的值,在这种情况下它工作正常。我检查了这个 link,这是一个有效的 JSON。
[
{
"name": "bettype",
"value": "All"
},
{
"name": "bookies",
"value": "Interwetten"
},
{
"name": "sporttype",
"value": "Soccer"
},
{
"name": "team1",
"value": "Braunschweig"
},
{
"name": "team2",
"value": "Bayern Munich"
},
{
"name": "league",
"value": "Germany DFB Cup (90`)"
}
]
更新:
这是服务器端代码:
var_dump((stripslashes($_GET['data']));
var_dump(json_decode(stripslashes($_GET['data'])));
这是输出:
string(244) "[{"name":"bettype","value":"All"},{"name":"bookies","value":"Interwetten"},{"name":"sporttype","value":"Soccer"},{"name":"team1","value":"Braunschweig"},{"name":"team2","value":"Bayern Munich"},{"name":"league","value":"Germany DFB Cup (90�)"}]" NULL
【问题讨论】:
-
在这里工作正常。你必须做得更好。
-
这个标志是什么`,在德国DFB杯(90`)
-
可能有问题的 json 解码器无法解码 [ ] 数组,但需要 object { } 作为根
-
我猜问题是`符号,因为我正在发送其他数据,并且工作正常。
-
如果你正在处理
$_GET,也许你可以看看 urlencode & urldecode 函数