簡體   English   中英

Javascript 將 PHP Json 轉換為 javascript 數組

[英]Javascript Convert PHP Json into a javascript array

在 php 中,我使用json_encode(...)然后在 Javascript 中獲取值,如下所示:

["float","float","float","float"]  // PS: This is a string...

我想把它變成一個普通的 javascript 數組,如下所示:

Arr[0] // Will be float
Arr[1] // Will be float
Arr[2] // Will be float
Arr[3] // Will be float

這怎么可能?

聽起來您正在 JavaScript 中檢索 JSON 字符串(也許通過 AJAX?)。 如果你需要把它變成一個實際的數組值,你可能想要使用JSON.parse()

var retrievedJSON = '["float","float","float","float"]'; // normally from AJAX
var myArray = JSON.parse(retrievedJSON);

如果您實際上是在頁面中寫出一個值,而不是使用 AJAX,那么您應該能夠簡單地直接回顯json_encode的輸出,而無需引用; JSON 本身是有效的 JavaScript。

var myArray = <?php echo json_encode($myPhpArray); ?>;
var myArray = <?= json_encode($myPhpArray); ?>;

很簡單。 ;-)

例子:

<?php
  $myPhpArray = array('foo', 'bar', 'baz');
?>
<script type="text/javascript">
  var myJsArray = <?= json_encode($myPhpArray); ?>;
</script>

應該輸出(查看源代碼):

<script type="javascript">
  var myJsArray = ["foo","bar","baz"];
</script>

例子

我推薦使用 jquery。 php 文件應該是這樣的......

//location.php
<?php
$change = array('key1' => $var1, 'key2' => $var2, 'key3' => $var3);
echo json_encode($change);
?>

然后jquery腳本...

<script>
$.get("location.php", function(data){
var duce = jQuery.parseJSON(data);
var art1 = duce.key1;
var art2 = duce.key2;
var art3 = duce.key3;
});
</script>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM