我想使用JSON將JS對象的數組發送到PHP。我的球員數組如下:用PHP解碼JSON字符串時遇到麻煩
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它看起來不錯,給這個: 字符串(40)「[{\」id \「:\」Percipient \「},{\」id \「:\」4 \「}]] 「
但我不能訪問PHP數組,關於與首發球員回聲聲明:此輸出: 玩家:----
全線沒什麼......也許它有話在數組中,我是新手,可能會丟失一些非常簡單的東西。任何幫助將不勝感激。
note我也嘗試json_decode($ players,true)將它作爲assoc數組,但得到相似的結果。
http://php.net/manual/en/security.magicquotes.disabling.php – mario
[爲什麼反斜槓會自動添加到所有$ _GET,$ _POST?](http:// stackoverflow。 com/questions/4359854/why-backslashes-being-being-being-being-being-added-to-all-get-post-automatically) – mario