首先,我有搜索堆棧溢出的答案,但我還沒有找到一個解決方案的工作。我正在使用MVC框架(yii)生成一些視圖並將它們放入數組中。每個視圖都是一張牌,我擁有一系列牌($ deck)以及一系列牌($ hands,每個牌手的牌名單)。我只是試圖在前端設置一個JavaScript變量來存儲PHP中創建的手。值得注意的是,我的觀點是多行。事實上,我目前的測試數據視圖只包括:json_encode不會逃避換行符
test
test
因此我使用json_encode,但它給我下面的錯誤,當我使用$ .parseJSON():
Uncaught SyntaxError: Unexpected token t
我讀其他地方它需要(無論什麼原因)使用json_encode兩次。我已經嘗試過,但沒有幫助。
有了一個json_encode,呼應$hands
的輸出(後跟一個出口)看起來很健康:
[["test\ntest","test\ntest","test\ntest","test\ntest", etc...
但是,當我不退出,我每一次出現語法錯誤。
編輯:這是我的代碼示例。請注意,$ cards通常是一個HTML數組,但在我仍然錯誤的簡化情況下,只包含上述兩行'test'。
$deck = array();
foreach ($cards as $card) {
$deck[] = $this->renderPartial('/gamePieces/cardTest',
array('card'=>$card), true);
}
$hands = Cards::handOutCards($deck, $numCards , $numPlayers);
$hands = json_encode($hands);
echo $hands; exit;
使用JavaScript,我做了以下內容:
var hands = $.parseJSON('<?php echo json_encode($hands); ?>');
在頁面加載錯誤。
任何幫助,將不勝感激!
感謝,
ParagonRG
使用json_encode兩次意義不大。 – Pointy
那你爲什麼不保持退出?爲什麼在JSON數組中有一個額外的'''引號? – mario
請顯示一些實際的代碼,包括使用'json_encode'的部分。 – nnnnnn