1

我有一个更维度的 php 数组,我想将它传递给一个 javascript 数组。

这是数组:

$this->_db_list_arrray[$this->getID()][$key] = $row;

它就像 "16":[[{"article_no_internal":"9987213"}]] 等等。我这样编码:

$shipping_part_list_array = json_encode($db_obj->getArticleList($elements));

在javascript中

alert("<?php  echo $shipping_part_list_array; ?>");

但警报仅显示 []。

有没有更好的方法将 php 数组传递给 java 脚本数组?

array(1) {
  [16]=>
  array(2) {
    [0]=>
    array(1) {
      [0]=>
      array(2) {
        ["article_no_internal"]=>
        string(6) "999184"
        ["article_name_internal"]=>
        string(29) "Geschenkbox Kerzenschein 2011"
      }
    }
    [1]=>
    array(1) {
      [0]=>
      array(2) {
        ["article_no_internal"]=>
        string(6) "999184"
        ["article_name_internal"]=>
        string(29) "Geschenkbox Kerzenschein 2011"
      }
    }
  }
}

这是在我的控制台中,现在我需要解析以获取正确的数据。谢谢

4

2 回答 2

3

您需要添加单引号来提醒您的 JSON 字符串:

alert('<?php  echo $shipping_part_list_array; ?>');
于 2012-08-29T09:06:45.593 回答
2

您不应该在 JSON 编码值周围加上双引号;只需执行以下操作:

alert(<?php echo $shipping_part_list_array; ?>);

但是,出于调试目的,以下会更好:

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

最后,将其分配给 JavaScript 变量:

var list = <?php echo $shipping_part_list_array; ?>;
于 2012-08-29T09:04:33.110 回答