7

動的データ (データベースから取得した値) を使用してハイチャートを扱っています。クエリを作成することで、テーブルから次のデータを取得できました

Item   2011   2012
pen     5      7
pencil  4      20
eraser  6      43

上記の情報を次の構造に保存し、別のページに渡したい

[{ name:'pen', data: [5,7]},{ name:'pencil', data: [4,20]},{ name:'eraser', data: [6,43]}]";

上記のデータをドリルダウン ハイチャートにプッシュしたいと考えています。

この形式で生成する方法はありますか? json_encode を使用してみましたが、成功しません。json_encode を使用してこれを達成できますか?

この方法で試した更新

while($row = mysql_fetch_assoc($result))
  {
  $rows[]= $row;

  }
echo json_encode($rows);

そして得た

[{"Item":"pen","2011":"5","2012":"7"},{"Item":"pencil","2011":"4","2012":"20"},{"Item":"eraser","2011":"6","2012":"43"}]
4

2 に答える 2

17

json_encode配列を JSON 形式に変換する便利なメソッドです。提供した出力を得るには、配列の配列が必要です。各サブ配列にはキー "name" と "data" があり、"name" は Item 列、"data" は 2011 年と 2012 年の値を含む別の配列です。

$results = mysql_query("...");
$arr = array();

while ($row = mysql_fetch_assoc($results))
{
    $name = $row['Item'];
    $data = array($row['2011'], $row['2012']);

    $arr[] = array('name' => $name, 'data' => $data);
}

echo json_encode($arr);
于 2012-04-30T01:44:41.157 に答える
3
  1. データベースの結果をループし、結果を配列に入れます
  2. JSON で配列をエンコードする
于 2012-04-30T01:38:17.167 に答える