这是我的代码:
public function write($txt){
$randID = rand();
$doc = new DOMDocument();
$doc->formatOutput = true;
$doc->load($this->fileName);
$b = $doc->createElement( "input");
$id = $doc->createElement( "id",$randID);
$b->appendChild($id);
$text = $doc->createElement( "text",$txt);
$b->appendChild( $text );
$doc->appendChild($b);
$doc->save($this->fileName);
}
为什么此代码始终会覆盖旧文件?为什么它不附加到现有文件的末尾?我是PHP的新手:)
答案 0 :(得分:2)
我认为这是因为它只是将文件加载到内存中,而不是添加所需的xml,而不是将其保存到磁盘。
由于您在保存时使用相同文件名,因此它会使用包含所有XML的新文件(包括新元素和数据)覆盖原始文件。对我有意义。