簡體   English   中英

使用js將PHP數組轉換為單個JSON對象

[英]Converting PHP array to a single JSON object using js

我有一個php數組(零索引),它通過回顯其json_encode格式直接發送到前端。

我希望JSON對象看起來像

{
    'A': null,
    'B': null,
    'C': null
}

但是當我嘗試console.log時,

console.log(<?php echo json_encode($array); ?>)

它的打印js數組

當我在后端嘗試print_r($ array)時,它也會打印

[array] => Array
    (
        [0] => A
        [1] => B
        [2] => C

    )

提前致謝

此代碼為您提供所需的輸出

$array = array
    (
        '0' => 'A',
        '1' => 'B',
        '2' => 'C'

    );
    $array = array_fill_keys($array, NULL);

echo json_encode($array);

輸出:

{"A":null,"B":null,"C":null}

Javascript:

<script type="text/javascript">
<!--
var data =<?php echo json_encode($array); ?>;

console.log(data);
//-->
</script>

輸出:

 Object {A: null, B: null, C: null}
    A:null
    B:null
    C:null

為什么不讓您的PHP數組成為['A'=> null,'B'=> null ...]的數組

否則,您的其他選擇是:

   $newArray = array_fill_keys($tags, null);
   json_encode($newArray);

這會將每個數組元素放入$ tags中,並將其設置為newArray中的索引,其值為null。

根據您的代碼,您將:

<?php $newArray = array_fill_keys($tags, null);
$json = json_encode($newArray); ?>
console.log(JSON.parse(<?= $json; ?>));

暫無
暫無

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

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