【发布时间】:2011-11-28 09:01:49
【问题描述】:
我正在尝试使用 JSON 将一组对象从 JS 发送到 PHP。我有一组玩家如下:
var player;
var players = new Array();
//loop for number of players
player = new Object();
player.id = theID;
players[i] = player;
那么我的 AJAX 调用如下所示:
JSONplayers = JSON.stringify(players);
$.ajax({
type: "POST",
url: "php/ajax_send_players.php",
data: {
"players" : JSONplayers
}
在 PHP 端,解码函数如下所示
$players = $_REQUEST['players'];
echo var_dump($players);
$players = json_decode($players);
echo 'players: ' .$players. '--'. $players[0] . '--'. $players[0]->id;
在 chrome 中调试,JSON 播放器 var 在发送之前看起来像这样: JSONplayers: "[{"id":"Percipient"},{"id":"4"}]"
当我在 PHP 中进行 vardump 时,它看起来还不错,给出了这个: string(40) "[{\"id\":\"Percipient\"},{\"id\":\"4\"}]"
但我无法访问 PHP 数组,并且关于从玩家开始的 echo 语句:输出以下内容: 玩家:----
没有什么全面的...也许它与数组中的 \'s 有关,我对此很陌生,可能会遗漏一些非常简单的东西。任何帮助将不胜感激。
注意我也尝试过 json_decode($players, true) 将其作为 assoc 数组获取,但得到了类似的结果。
【问题讨论】:
标签: php javascript json