2017-05-09 16 views
1

更換雙引號我有一個數組:通過簡單的使用json_encode

['One', 'Two',...] 

當我在這個陣列上使用json_enconde,它返回到我:

["One", "Two",...] 

我需要通過這個數組到一個JS函數和成功,我必須通過一個數組像第一個,只有簡單的引號。然而,json_encode用雙引號返回數組。

是否有任何解決方案通過簡單的引號替換json_encode(myArray)雙引號?

當我使用

[\'One\',\'Two\',...] 

它的工作原理我的JS函數返回一個數組,只能用這種方式。所以我需要通過類似的東西。

我有類似

echo '<div onclick="generateUP(\'john\','.json_encode($myArray).',\'smith\')"></div>'; 

它不工作,但

echo '<div onclick="generateUP(\'john\',[\'One\',\'Two\'],\'smith\')"></div>'; 

的偉大工程......

感謝

+0

這兩個數組之間沒有真正的區別。注意:JSON規定它會在文本和字段名稱周圍加上雙引號。 – RiggsFolly

+0

PS:您在示例一中的第一個單引號不是有效的單引號!使用文本編輯器而不是文檔編輯器(字)來編寫代碼 – RiggsFolly

+0

您是否嘗試過? http://stackoverflow.com/questions/2424281/how-do-i-replace-double-quotes-with-single-quotes –

回答

0

什麼,如果你喜歡這款

將其分配給一個javascript變量並將該函數中的變量作爲參數發送?

?> 
<script type='text/javascript'> 
var data = JSON.parse('<?=json_encode($myArray)?>'); 
</script> 
<?php 
echo '<div onclick="generateUP(\'john\',data ,\'smith\')"></div>'; 
+0

我試過JSON.parse('。json_encode($ this - > _ myArray)。')cuz我' m在PHP類中工作,所以我不能使用你所說的,並且它返回SyntaxError:期望的表達式,得到'}' – Srithovic

+0

這就是爲什麼我使用?>在啓動html標籤之前。 你不需要寫在PHP中..只有在PHP中點進程。在JSON.parser函數中回顯它。 –