ホームページ >バックエンド開発 >PHPチュートリアル >複数のJsonオブジェクトを出力する
3 つの関数から生成された 3 つの配列があり、それらはすべて Json データとして返される必要があります
しかし、各 echo json_encode(); で最終的に返されるデータが 3 つの json オブジェクトである場合、解析に問題があります。
3つの配列を一緒にしない方が良いです...
また、jsonデータが返された場合、ブラウザはそれを認識して構造化されたjsonデータを表示できるはずですよね?
ここで返すのは、文字列を直接表示する形式です...
ステートメントが使用されています
header('Content-type: application/json');
どのような種類の JSON データを返す必要がありますか?
単一の方法で一律に返されますか?次に、配列を結合して、次のような異なる JSON 文字列に変換します。
echo json_enocde(array('a'=>$a,'b'=>$b,'c'=>$c)) ;
「しかし、各 echo json_encode(); が最終的に返されるデータが 3 つの json オブジェクトである場合、解析に問題がある」と言いました
問題は何ですか?
var json_obj=JSON.parse (戻りデータ) を使用して値を返すと、それは json オブジェクトになります
以下のようにページを制御できます
function func1(){}
function func2(){}
function func3( ){}
$data = array();
$data["func1"] = func1();
$data["func3"] = func3(); ;
echo json_encode($data);
これでうまく解析できるはずです
形式が間違っていると解析できません
それぞれ出力 3 json 文字列ですが、形式が間違っているためブラウザで解析できません
したがって、配列を使用してそれらを組み立ててから出力する必要があります
解決策は、学習した内容を一度に 3 回だけ出力することです
にマージします。オブジェクトを解析し、JSON に解析してから、クライアントはさまざまなオブジェクトを受け取ります
まず 3 つの配列を 1 つの配列に結合してから、json_encode を実行します。
json データを返す php の例