1

JavaScript配列に渡したい、より次元の高いphp配列があります。

これは配列です:

$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 に答える