XMLのPHPでパースを行っていて気がついたのですが、array2xmlという関数を使っていましたが、最初はこれのバグかと思いましたがどうもXMLの構造の仕様なのかな?と感じるところがありましてお聞きいたします。
※書き方や言葉の問題は初心者ゆえお許しくださいまし
例えば3レコードある著者の場合はこのような配列に変換されます
lang
1root{ 2 [0] 3 author{ 4 value='太郎' 5 } 6 [1] 7 author{ 8 value='次郎' 9 } 10 [2] 11 author{ 12 value='三郎' 13 } 14}
次に位置レコードのデータを読み込むと
lang
1root{ 2 [0] 3 author{ 4 value='太郎' 5 } 6}
とはならず、
lang
1root{ 2 author{ 3 value='太郎' 4 } 5}
というように添字?インデックス?が省略され階層も下げられます。
この関数の問題かと思っていましたが、扱っているうちにphp付属の関数(なんだか忘れました)を利用した時や、あるいは扱うXMLでも1レコードに対するもので添字を見たこと無いので…、これはもしかして①仕様なのでしょうか?
そしてみなさんはXMLを取り込んで配列化するとき、②該当する項目に添字があるかか判定し配列でない場合は[0]として添字を割り当てるのでしょうか?
意味がわからなかったらごめんなさいっていうか、スルーしてください
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/03/04 11:33