0

JSON の操作は初めてです。次の XML 結果があります。同じ結果を提供したいと思いますが、要求された場合は JSON 形式で提供します。私のデータは mySQL 配列から来ています。

同じ名前のノードを複数持とうとすると、問題が発生します。たとえば、私の XML の結果を見てみましょう:

<results>
    <result>
        <item_id>1</item_id>
    </result>
    <result>
        <item_id>50</item_id>
    </result>
    <result>
        <item_id>50433</item_id>
    </result>
    <result>
        <item_id>3</item_id>
    </result>
</results>

PHP で単純に次のようなことをすると、データが互いに上書きされ続けます。

foreach($result as $key => $value) {
    $json["results"]["result"]["item_id"] = $value;
}

最後の item_id が 3 である 1 行の結果しか得られません。

私は何を見落としていますか?

4

1 に答える 1

3

配列に値を入れていないため、ループ内の値を上書きしています。

$json["results"]["result"]["item_id"] = $value;

する必要があります

$json["results"]["result"]["item_id"][] = $value;
于 2013-03-13T01:29:50.460 に答える