XMLを配列に・・・これが最適解かも

2007/09/02 | XML

結局「PHP Classes」を探し回った。一時は自分で書いてみようかとも思った。xml_parse_into_structすればキーと値の関係がわかるわけで、これを使えば力技で配列に格納できるからだ。しかし、その苦労をしなくてすんだ。その力技をそのまま記述してくれているスクリプトに出会うことが出来た。

http://www.phpclasses.org/browse/package/2938.html

とりあえず、このスクリプトを、自分好みのコーディングスタイルでキレイに書き換えてみた(中身は同じだけど)。サンプルもファイル内に書いておいた。オリジナルのファイルがGPLだから、これもGPLということで。
暇があったら試してみてください。要コメントということでっ!(^-^)。

class.XmlToArray.lzh

8件のコメント

  1. inspi :

    ちょうどCAKEとXMLを使ったnondb アプリを作ろうとしているところで、早速利用させてもらうとおもいます。

    1点ですが、
    XMLパースの際に、xml_parse_into_structをそのまま発行すると、ソース元の文字コードに従ってとってくると思うのですが、
    XMLは一般的にUTF-8なきがしているので、
    xml_parser_set_option($parser, XML_OPTION_TARGET_ENCODING, ‘UTF-8′)

    みたいな感じで一行付け加えるのはどうでしょうか。

  2. かおるん :

    勇気ある選択、ありがとうございます。
    中身はほとんどさわってなかったので、おかしそうなところとかありましたね。私なりに書き直してみましたので、再度ダウンロード・試用をお願いしてもいいでしょうか。
    よろしくお願いします。

  3. inspi :

    ありがとうございました。
    早速ダウンロードさせていただきましたので、
    使ってみたいと思います。

  4. MID [Serendipity Weblog] :

    PHP4でxmlパースして天気予報

    ここのサーバはPHP5なので、simpleXmlを使えるのですが、実際に天気予報を表示させるサーバがPHP4なので、さてどうしようかな、面倒くさいな、などと思いながらググっていましたところ「XM

  5. MID [Serendipity Weblog] :

    ひとくち予報のRSSまたはYAHOO!天気情報のRSSを利用して週間天気予報を表示させる。がボツったので

    「PHP4でxmlパースして天気予報」で、RSSを配列に突っ込んで天気予報を表示させる、というのを作っていたのですが、ひとくち予報さんもYAHOO!天気情報さんも、ともに法人での利用許可

  6. HA-G1 :

    PHP4でXMLを使う機会にあたり、こちらのスクリプトを使わせていただきました。
    PHP5のsimpleXMLになれてしまっているとパースをいちからやるのは大変ですね(ノ∀`)

    ありがとうございます!!!

  7. php : php4でXMLを扱う場合 - SAION.BIZ :

    […] PHPのテクメモ » Blog Archive » XMLを配列に・・・これが最適解かも http://php.tekmemo.com/?p=754 […]

  8. AOKAZU :

    74行目の判断方法では、データに0(ゼロ)をセットすると登録されませんでした。
    若干ですが、変更して利用しています。

    オリジナル
    //$child[$name]= ($values[$i][‘value’])?($values[$i][‘value’]):”;

    修正後
    $child[$name]= (isset($values[$i][‘value’]))?($values[$i][‘value’]):”;

コメントを残す


守谷市(まちの情報ポータル) 無料アンケートレンタルjpForm.net