XML DOM ルートノード直下に子ノードを持つノードを追加

解決済みの質問

XML DOM ルートノード直下に子ノードを持つノードを追加

XML DOMを利用して、XMLファイルにデータを追加するPHPを書いています。
リファレンス等を参照して、追加は出来るようになったのですが
ルートノードが増えていってしまいます。

:::::::::::::::::::::::::::::::::::::::::::::::::::::
define("XMLFILE", "○○.xml");
header("Content-Type: text/html; charset=UTF-8");
$doc = new DOMDocument("1.0","UTF-8");
$doc->formatOutput = TRUE;
$doc->load(XMLFILE) or die("ファイルを読み込めません\n");

$record = $doc->createElement("record");
$date = $doc->createElement("date","日付サンプル");
$title = $doc->createElement("title","タイトルサンプル");
$paragraph = $doc->createElement("paragraph","パラグラフ");
$number = $doc->createAttribute("number");
$number->value ="004";

$doc->appendChild($record);
$record->appendChild($number);
$record->appendChild($date);
$record->appendChild($title);
$record->appendChild($paragraph);

print htmlspecialchars($doc->saveXML(), ENT_NOQUOTES);
$doc->save(XMLFILE) or die("ファイルを保存できません。");

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

どのようにすれば、ルートノードの下に新規ノードが入ってくれるのでしょうか。
どなたか教えて頂けるととても嬉しいです。
よろしくお願いします。

投稿日時 - 2006-11-19 02:07:30

連想キーワード:

QNo.2548362

すぐに回答ほしいです

質問者が選んだベストアンサー

$doc->appendChild($record);
としているので、rootノードが増えてしまいます。

$root = $doc->childNodes->item(0);
$root->appendChild($record);
とすれば、rootノードの下にノードが追加されます。

投稿日時 - 2006-11-19 14:03:22

お礼

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

早速、コードを書き直してみたら
ルートの下に足されるようになってくれました!!

本当に、ありがとうございました!!

投稿日時 - 2006-11-19 17:40:46

ANo.1

0人が「このQ&Aが役に立った」と投票しています

あわせてチェックしたい
  • descriptive paragraph ...
  • grammatical and word-processing paragraph??? ...
  • AppendChildができない理由 ...
PR

OKWaveのオススメ

教えて弁護士さん!

お金の悩みQ&A特集はこちら