php DOMDocument 递归 格式化缩进HTML文档
程序员文章站
2022-04-05 15:13:27
...
php DOMDocument 递归 格式化缩进HTML文档
function format(\DOMNode $node, $treeIndex = 0) { //不格式化的标签if (in_array($node->nodeName, array("title", "p", "span"))) return; if ($node->hasChildNodes()) { $treeIndex++; $tabStart = "\r\n" . str_repeat(" ", $treeIndex); $tabEnd = "\r\n" . str_repeat(" ", $treeIndex - 1); $i = 0; while ($childNode = $node->childNodes->item($i++)) { //去除空的text nodeif ($childNode->nodeType == XML_TEXT_NODE and preg_match('#^\s*$#', $childNode->nodeValue)) { $node->removeChild($childNode); $i--; continue; } $node->insertBefore($node->ownerDocument->createTextNode($tabStart), $childNode); $i++; format($childNode, $treeIndex); }; $node->appendChild($node->ownerDocument->createTextNode($tabEnd)); } } $html = ''; $doc = new \DOMDocument(); //$doc->formatOutput = true; //不知道是不是我的理解问题,这个选项格式化出来的并不完美$doc->loadHTML($html); format($doc->documentElement); echo$doc->saveHTML();
以上就介绍了php DOMDocument 递归 格式化缩进HTML文档,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。
上一篇: PHP源码已迁移至GitHub
下一篇: vue cli重构多页面脚手架实例分享
推荐阅读
-
PHP中使用DOMDocument来处理HTML、XML文档的示例
-
php DOMDocument 递归 格式化缩进HTML文档,_PHP教程
-
php DOMDocument 递归 格式化缩进HTML文档,_PHP教程
-
php DOMDocument 递归 格式化缩进HTML文档,
-
PHP中使用DOMDocument来处理HTML、XML文档的示例
-
php DOMDocument 递归 格式化缩进HTML文档,
-
php DOMDocument 递归 格式化缩进HTML文档
-
PHP中如何使用DOMDocument来处理HTML、XML文档
-
php DOMDocument 递归 格式化缩进HTML文档
-
PHP中如何使用DOMDocument来处理HTML、XML文档