DOMDOCUMENT | PHP: save getElementById output into new HTML file(DOMDOCUMENT|PHP:将getElementByID输出保存到新的HTML文件中)
本文介绍了DOMDOCUMENT|PHP:将getElementByID输出保存到新的HTML文件中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试使用PHP保存getElementByID的结果。
我的代码:
<?php
$doc = new DOMDocument();
$doc->validateOnParse = true;
@$doc->loadHTMLfile('test.htm');
$div = $doc->getElementById('storytext');
echo $doc->saveHTML($div);
?>
这将显示相关的文本,我现在想将其保存到一个新文件中,我尝试过使用save()、saveHTMLfile()和file_put_Contents(),但这些都不起作用,因为它们只保存字符串,而我无法将$div转换为字符串,因此遇到了问题。
如果我只保存整个文件:
$doc->saveHTMLfile('name.ext');
它可以工作,但它可以保存所有内容,而不仅仅是我需要的部分。
我是一个彻头彻尾的DOM新手,所以我可能遗漏了一些非常简单的东西,但我通过搜索找不到太多关于这方面的信息。
推荐答案
function getInnerHtml( $node ) {
$innerHTML= '';
$children = $node->childNodes;
foreach ($children as $child) {
$innerHTML .= $child->ownerDocument->saveXML( $child );
}
return $innerHTML;
}
$html = getInnerHtml($div);
file_put_contents("name.ext", $html);
这篇关于DOMDOCUMENT|PHP:将getElementByID输出保存到新的HTML文件中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
织梦狗教程
本文标题为:DOMDOCUMENT|PHP:将getElementByID输出保存到新的HTML文件中
基础教程推荐
猜你喜欢
- 如何在 Laravel 5.3 注册中添加动态下拉列表列? 2021-01-01
- 在PHP中根据W3C规范Unicode 2022-01-01
- PHP 类:全局变量作为类中的属性 2021-01-01
- PHP PDO MySQL 查询 LIKE ->多个关键词 2021-01-01
- YouTube API v3 点赞视频,但计数器不增加 2022-01-01
- Cron Jobs 调用带有变量的 PHP 脚本 2022-01-01
- 如何替换eregi() 2022-01-01
- 如何在 Laravel 中使用 React Router? 2022-01-01
- 学说 dbal querybuilder 作为准备好的语句 2022-01-01
- 有什么方法可以用编码 UTF-8 而不是 Unicode 返回 PHP`json_encode`? 2021-01-01
