2011-02-09 7 views
1

が、私は$ .getJSONが呼び出されたJSON配列を出力し、いくつかのPHPコードを持っていることを確認します私が返信する返信の形式は次のとおりです。はJSON配列FLOT互換

{"0":"0","1296658458000":"566","1296725534000":"789","1297072385000":"890","1297072388000":"435"} 

Flotはこのデータを処理していません。私はFlotがそれが[[1,2]、[4,5]、[6,9]]などの形式である必要があると信じています。したがって、このJSON配列を正しい形式にする最良の方法は何ですかflotがグラフを読み込んで生成する。

答えて

1

使用しないでくださいではないことを代わりに連想オブジェクト しまうの配列を返すjson_encode持つことができることがわかりますarray_combine、それはあなたが必要とするものを行っていないからです。 PHPで「ジップ」を行うことは少し不快ですが、あなたが管理できるようになります。

function make_pair($date, $amount) { 
    return array($date, $amount); 
} 

$data = array_map('make_pair', $date_dispatched, $amount); 

そしてJSONエンコードいます。

+0

多くのありがとう、問題解決! – Alex

2

あなたはここで例2を見れば:http://php.net/manual/en/function.json-encode.php あなたは解決策ではなく、

var flotArr = [] 
var cnt=0; 
for (var o in data) flotArr[cnt++]=[o,data[o]] 
+0

非連想配列でjson_encodeを使用するといいですが(それを指摘してくれてありがとう)、両方のデータセットをどのように組み合わせて正しい形式にするのか分かりません。あなたが提供したコードはどのようにこれを達成していますか? – Alex

+0

私が与えたコードはあなたが今使っているオブジェクトを取り出し、 '[[0,0]、[1296658458000,566]、[1296725534000,789]、[1297072385000,890]、[1297072388000,435]]'あなたが欲しいと言った – mplungjan