php - 如何遍历 PHP DOMDocument 标签下的所有 Childs

标签 php domdocument

我有以下html

$html =  '<body><div style="font-color:#000">Hello</div>
<span style="what">My name is rasid</span><div>new to you 
</div><div style="rashid">New here</div></body>';

$dom = new DOMDocument();
$dom->loadHTML($html);

$elements = $dom->getElementsByTagName('body');

我试过了

foreach($elements as $child)
 {
        echo $child->nodeName;
 }

输出是

body

但我需要遍历 body 下的所有标签,而不是 body。我该怎么做。

我也在上面的例子中尝试过替换

$elements = $dom->getElementsByTagName('body');

$elements = $dom->getElementsByTagName('body')->item(0);

但是它给出了错误。有什么解决办法吗??

最佳答案

试试这个

    $elements = $dom->getElementsByTagName('*');
    $i = 1; //counter to output from 3rd one, since foreach loop below will output" html  body div span div div"

    foreach($elements as $child)
    {

    if ($i > 2) echo $child->nodeName."<br>";   //output "div span div div"
    ++$i;
    }

关于php - 如何遍历 PHP DOMDocument 标签下的所有 Childs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15697288/

相关文章:

php - 删除名称中仅包含数字的表 - Codeigniter

php - 如何读取保存在客户端浏览器cookie内存中的laravel_session cookies?

php - 如何从不同的行中获取唯一值

PHP 数组到 mysql BD...缺少数组字段

php - 删除 HTML 中标签之间的空格

php - 如何在没有 HTML 包装器的情况下保存 DOMDocument 的 HTML?

php - 如何在导出的xml中添加DOCTYPE?

php - 如果 mysql 数据库中的数据发生变化,如何触发 AJAX

PHP DOMDocument createElement 混淆符号

php - 使用 DOMDocument 按类名获取所有元素