我有一个与php文件(action.php)通信的HTML表单(form.html)。表单中的输入将li元素添加到单独的静态HTML文件(content.html)的顶部。但是,我还想删除content.html中的最后一个li元素。似乎有比正则表达式更好,更可靠的方法,所以我一直在尝试DOM解析。有没有办法使用PHP和DOM删除content.html中的最后一个li元素?
HTML(form.html):
<form action="action.php" method="post">
Year: <input type="text" name="year" size="3" /><br />
URL: <input type="text" name="url" size="3" /><br />
Description: <input type="text" name="description" size="3" /><br />
<input type="submit" name="preview" value="Preview" />
<input type="submit" name="update" value="Update" />
</form>
PHP(action.php):
else if ($_POST['update']) {
$item = <<<MYTAG
<li><h2><a href="$url">$year</a></h2><span class="desctext">$description</span></li>
MYTAG;
$doc = new DOMDocument;
$doc->load('content.html');
$file = $doc->documentElement;
$removethis = $file->getElementsByTagName("li")->item(0);
$old = $file->removeChild($removethis);
echo $doc->saveXML();
$file_data = "$item\n";
$file_data .= file_get_contents('file.html');
file_put_contents('file.html', $file_data);
}