2

私はfirebugのコンソールにこれを持っています、

[Object { fa_id="1167535",  f_id="1000",  loc_type="6",  more...}, Object { fa_id="1167535",  f_id="1000",  loc_type="6",  more...}]

サーバー側からのデータです。さて、このデータを別のファイルで使用できるように、これを配列に変換するにはどうすればよいでしょうか。試しJSON.parseてみjQuery.parseJSONましたが、どちらもうまくいきませんでした。

4

3 に答える 3

5

これは JSON ではなく、文字列ではなくオブジェクトの Javascript 配列です。私の推測では、あなたはこれを jQuery ajax 呼び出しから受け取り、dataType : 'json'jQuery が JSON をこの配列に自動的に解析するように設定したと思います。

PHPスクリプトに送信するには、次を使用してJSONに変換できます。

var myString = JSON.stringify(data);

次に、それを POST データとして使用して、PHP スクリプトへの ajax 呼び出しを開始します。

var myString = JSON.stringify(data);
$.post('page.php', { data : myString }, function(){
    console.log( "sent" );
});

PHP では、次を使用してデコードできます。

$data = json_decode($_POST['data']); // <-- or whatever your post variable is named

foreach($data as $obj)
{
    echo $obj->fa_id;
}
于 2013-02-21T18:49:01.753 に答える
0

PHP配列を取得したい場合は、これを使用してください

http://php.net/manual/en/function.json-decode.php

于 2013-02-21T18:47:56.943 に答える
0

指定した文字列は有効な JSON ではありません。

[Object { fa_id="1167535",  f_id="1000",  loc_type="6",  more...}, 
 Object { fa_id="1167535",  f_id="1000",  loc_type="6",  more...}]

特に、" Object" および " more..." 文字列は JSON パーサーで解釈できません。

検査しているオブジェクトが次の名前の変数であると仮定しますfoo

console.log(JSON.stringify(foo));

オブジェクトの有効な JSON 表現を Javascript コンソールに出力する必要があります。

于 2013-02-21T18:48:45.497 に答える