※ ChatGPTを利用し、要約された質問です(原文:phpを使ってxmlの追加書き出しについて教えてください)
phpを使ってxmlの追加書き出しについて教えてください
このQ&Aのポイント
phpを使用してxmlに追加書き出しを行いたい場合、fopen関数を使ってファイルを追記モードで開くことができますが、同じXMLヘッダが二重に作成されてエラーが発生します。この問題を解決する方法はありますか?
現在、flashからphpにデータを渡し、phpでXMLを作成していますが、この方法では1つのXMLデータしか作成できません。xml_write関数を使用してファイルを書き出すと、XMLヘッダが二重に書き込まれてしまいます。どのようにすれば問題を解決できますか?
PHPを使用してXMLに追加で書き出す方法について教えてください。具体的には、fopen関数を使用してファイルを追記モードで開こうとすると、同じXMLヘッダが二重に作成されてしまい、エラーが発生します。解決策はありますか?
phpを使ってxmlの追加書き出しについて教えてください
現在flashからphpに位を渡して、そこからxmlで書き出すということをしています。
phpからxmlを作成することは、なんとか無事にできるのですが、この場合一つのXMLデータしか作成できません。
fopen($fname."a")を使って追加で作成しようとすると
$buf ="<?xml version=\"1.0\" encoding=\"" . $encode."\" ?> \r\n";
が二重に作成されてエラーが出ます。なにか解決策はないでしょうか?
お願いします。
ソース
------------------------------------------------------------
<?
function xml_write($fname,$roottag,$id,$encode,$val)
{
$file = fopen($fname,"w");
// XMLヘッダ書き出し //
$buf ="<?xml version=\"1.0\" encoding=\"" . $encode."\" ?> \r\n";
fputs($file,$buf);
// XMLルート書き出し //
fputs($file,"<".$roottag.">\r\n");
// XMLルート書き出し1 //
fputs($file,"<".$id.">\r\n");
// XML本文書き出し //
foreach($val as $key => $oneval)
{
fputs($file,"<".$key.">" . $oneval . "</".$key.">\r\n");
}
// XMLルート書き出し1 //
fputs($file,"</".$id.">\r\n");
// XMLルート終了 //
fputs($file,"</".$roottag.">\r\n");
fclose($file);
}
xml_write("./test/test.xml","doc","object","Shift_JIS",$_POST);
?>
-----------------------------------------------------------------