gpt4 book ai didi

php - 使用 PHP、Xpath 和/或 DOM 更改 HTML 内容

转载 作者:行者123 更新时间:2023-11-28 02:15:47 25 4
gpt4 key购买 nike

<分区>

Possible Duplicate:
xPath insert before and after - With DOM and PHP

我需要以一种很好的正确方式解析字符串中的 HTML 代码。

Wordpress 创建的侧边栏结构如下所示。

<div class="sidebar-1">
<ul>
<li id="archives">
<h4>Archives</h4>
<ul>
<li>a href="">Test1</a></li>
<li>a href="">Test2</a></li>
</ul>
</li>
<li id="pages">
<h4>Archives</h4>
<ul>
<li>a href="">Test</a></li>
<li>a href="">Test</a></li>
</ul>
</li>
</ul>

我想在 之后创建一个

,在 父元素之前创建一个
,在列表部分“archives”和“pages”中”。如果添加了更多未知列表项,它应该会起作用。

结果应该是这样的:

<div class="sidebar-1">
<ul>
<li id="archives">
<h4>Archives</h4>
<div class="content">
<ul>
<li>a href="">Test1</a></li>
<li>a href="">Test2</a></li>
</ul>
</div>
</li>
<li id="pages">
<h4>Archives</h4>
<div class="content">
<ul>
<li>a href="">Test</a></li>
<li>a href="">Test</a></li>
</ul>
</div>
</li>
</ul>

我试图制作一个 DOM 函数,但我没有弄清楚需要做什么以及如何做。它返回数组中 h4 标签内的内容。不是很有帮助。

    function add_sidebar_content($html)
{
$dom = new DOMDocument();
$dom->loadHTML($html);
$xpath = new DomXPath($dom);
$tag = $dom->getElementsByTagName("h4");
$counter = $tag->length;
for ($i = 0; $i < $counter; $i++)
{
$result = $tag->item($i)->nodeValue;
}
return $result;
}

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com