我想將php數組轉換爲json字符串,並通過異步Web請求傳遞該字符串。當webrequest被創建時...我傳遞的字符串的值是「[object object]」,我不想要。難以將php關聯數組轉換爲字符串
稍作簡化:
$positionCounterArray = array("QB"=>1, "RB"=>1);
$positionCounterArrayString = json_encode($positionCounterArray);
在JavaScript後...
<script>
var numberOfPlayers = <?php echo $positionCounterArrayString; ?>;
alert(numberOfPlayers);
var query = "./queries/queryForAvailablePlayers.php?playerId="+playerId+"&userId="+id+"&numberOfPlayers="+numberOfPlayers;
</script>
對應的代碼段正上方,當我點擊右鍵,查看源代碼,我看到:
var numberOfPlayers = {"QB":0,"RB":0};
alert(numberOfPlayers);
我想這是有道理的...警報(numberOfPlayers)不會被綁定,直到運行時間所以我們不會看到值:{「QB」:0,「RB」:0}然而
但是當我真的運行它時,我的彈出警報是[Object object]而不是字符串json string I希望爲:{ 「QB」:0, 「RB」:0}
整個問題是,當我把我的查詢,它發送./queries/queryForAvailablePlayers.php?playerId=179 &用戶id = 2 & numberOfPlayers = [對象對象]。這個查詢是這樣捕獲的,我不能使用json_decode($ _ GET ['numberOfPlayers'],true)將其返回到關聯數組中以提取值並最終用於查詢我的數據庫。
任何與此事有關的幫助表示讚賞!謝謝
我想我感到困惑。我認爲json_encode函數產生了一個字符串:「返回一個包含值的JSON表示的字符串。」資料來源:http://www.php.net/json_encode。我會在短短的時間內嘗試你所說的話。但我的希望是,我可以作爲字符串傳遞,並使用json_decode將jason格式的字符串轉換回關聯數組,以便我可以在其中抽取值,例如RB – donsiuch
@don是,它會生成一個字符串。但是如果你把這個字符串放到源代碼中,它會被解釋爲代碼,你應該能夠看到在生成的代碼中它根本不是字符串。 – deceze
@donsiuch確切地說,我正要說相同的 –