質問: "\n"; $xml_code .= "".$row['ccc']."\n"; $xml_code .= "".$row['ddd']."\n"; $xml_code .= "".$row['eee']."\n"; $xml_code .= "\n"; } return ($xml_code); } index.php で 両方の$xml_codeを出力する 以上のようなプログラムなんですけど、 index.phpでのxmlでの表示の仕方がわかりません。 /* ---index.php--- */ "."\n"; echo func1(); echo func2(); // xml footer生成 // db 切断 } ?> としてindex.phpを実行するとieで以下のエラーが出ます。 (firefoxではでません。両ブラウザ共、ソースを表示するとxml形式にはなっていますが・・) 「xml ページを表示できません xsl スタイル シートを使用した xml 入力は表示できません。 エラーを訂正してください。 [更新] ボタンをクリックするか、または後でやり直してください。 -------------------------------------------------------------------------------- xml ドキュメント内では最上位の要素に限り、使用できます。 」 それと文字列($xml_code)をsimplexmlで処理するにはどうしたらいいのでしょう?
回答: ieで以下のエラーが出ます。 =>xmlのドキュメントルートがないからじゃないですか。 header('content-type: text/xml; charset=utf-8'); echo ""."\n"; echo ""; echo func1(); echo func2(); echo ""; それから改行文字は不要だと思うんですけど(人間が見るなら見やすいですが) simplexmlで処理するにはどうしたらいいのでしょう? =>simplexml_load_string関数とかsimplexml_load_file関数です。 http://www.phppro.jp/phpmanual/php/book.simplexml.html simplexmlは、出来上がってるxmlを簡易にパースするのに使います。 新たにxmlを生成するなら、dom関数では、 http://www.php.net/manual/ja/book.dom.php