有一批静态文件需要删除一些元素,考虑使用php脚本批量处理
step1 扫描目录
use Masterminds\HTML5;
$dir = __DIR__ . '/path/to/html';
$fileNames = scandir($dir);
$html5 = new HTML5(['disable_html_ns'=> true]);
foreach ($fileNames as $fileName) {
if (in_array($fileName, ['.', '..'])) {
continue;
}
$filePath = $dir . '/' . $fileName;
if (!is_file($filePath)) {
continue;
}
}
这里使用Masterminds\HTML5
这个包,直接使用DOMdocument
读取h5会出现问题
step2 加载文件
$document = $html5->loadHTMLFile($filePath);
$xpath = new DOMXPath($document);
step3 修改节点
clearNodes($xpath);
function clearNodes($xpath) {
clearElements($xpath, '//div[@class="panel panel-default tab-content"]');
}
step4 保存文件
$html5->save($document, $filePath);