PHPで、XMLをJSONに変換しようとしています。
(simplexml_load_stringとjson_decodeを使っています)
しかし、要素数が1の配列のデータと、要素数が2以上の配列のデータとで
JSONの結果が違うので困っています。
例えば下記です。
要素数1のXML <items> <item>Hoge</item> </items>
要素数2のXML <items> <item>Hoge</item> <item>Fuga</item> </items>
上記は、要素数が違うだけでほぼ同じXMLです。
しかし、これをJSONに変換すると、
{"item":"Hoge"}
{"item":["Hoge","Fuga"]}
のようになります。
このJSONからHogeを取り出そうとすると、
要素数1の場合は $data["item"] ですが、
要素数2以上の場合 $data[0]["item"] になってしまいます。
要素数1の時でも、
{"item":["Hoge"]}
となるような変換方法が、PHPではないものでしょうか?