1

Ajax 呼び出しを使用して多次元配列を作成し、Google チャート (列) にデータを入力しています。ただし、返される配列がこのエラーを引き起こしています:

Uncaught Error: Not a valid 2D array.  

これは、送り返す配列を生成するコードです。

$chartData = array();

    $i = 0;
    foreach ($hourVal as $value) {

        if($i <= 9){
           $chartData[] = array(
               "0" . $i => (int) $value
            );
        } else {
            $chartData[] = array(
                $i => (int) $value
            );
        }
        $i++;
    }

これは、console.log のときの配列です。

[
 [
  "Terms",
  "Visits"
 ],
 {
  00: 88
 },
 {
  01: 30
 },
 {
  02: 44
 },
 {
  03: 20
 }
]

編集:配列の先頭に行を追加し、json_encodeも追加します:

array_unshift($chartData, array("Terms","Visits"));
echo json_encode($chartData);

何が起こっているのか、どうすればこれを修正できるのでしょうか?

4

2 に答える 2

0

私はそれを解決しました。これは、プレフィックス 0 を使用してそれらを送信していたため、それらを配列のインデックスにしていたためです。そのビットを切り取り、文字列として送信する必要がありました。望ましくないが修正:(

于 2013-11-11T11:23:28.990 に答える