【PHP】複数のXMLを結合する
配列に入れた複数のURLから foreach を使ってXMLを結合したかったのですが、
なかなか上手くいかず、ネット中を探しまわて見つけたコードです。
スッキリ解決したのでメモ。
http://stackoverflow.com/questions/20372216/combine-multiple-xml-into-one#answers
<?php $files= array( 'xml1.xml', 'xml2.xml' ); $dom = new DOMDocument(); $dom->appendChild($dom->createElement('JobRecords')); foreach ($files as $filename) { $addDom = new DOMDocument(); $addDom->load($filename); if ($addDom->documentElement) { foreach ($addDom->documentElement->childNodes as $node) { $dom->documentElement->appendChild( $dom->importNode($node, TRUE) ); } } } echo $dom->saveXml();
これを見つけるまで色々な書き方を試したのですが、
こんなに綺麗に書けるんだと感動しました。
Writer
KO
誕生日に会社のみんなから『世界文学全集』をプレゼントしてもらった読書好きフロントエンド・エンジニアです。WordPressとMovableTypeが得意ですが、本当の特技は薪割りです。