用PHP DOM HTML Parser(新手)替换多个值


Replacing several values with PHP DOM HTML Parser (Newbie)

考虑存储在数据库中的以下代码:

<section id="aids" data-toggle="collapse" data-target="#aids2" class="SecCon">
  <h2><span class="label label-primary"><small><span class="only-collapsed glyphicon glyphicon-chevron-down"></span><span class="only-expanded glyphicon glyphicon-remove-sign"></span></small> Aids</span></h2>
  <div id="aids2" class="collapse in article">
    <p>Some text.</p>
  </div>
</section>

我想把它改成更简单的格式:

<section id="directions">
  <h2>Directions</h2>
  <div><p>Some text.</p></div>
</section>
<section id="ecology">
  <h2>Ecology</h2>
  <div><p>Some text.</p></div>
</section>

这是我真正关注的代码。我将为每个部分手动插入一个唯一的ID,当然,每个带有的标题也有一个唯一标题。

<section id="SomeValue">
  <h2>Another Value</h2>
  <div>

在用户可以使用jQuery切换元素打开或关闭之前,数据目标和div id必须具有匹配的值。我在修改标题或节ID以形成这些"次要ID"时发现了几个问题。所以我认为如果它们只是由小写顺序字母(a、b、c等)组成会更好…

<section data-target="#a">
  <h2></h2>
  <div id="a">
<section data-target="#b">
  <h2></h2>
  <div id="b">

我试图弄清楚如何使用regex实现这一点,但有人建议HTML DOM Parser更好。所以我从http://simplehtmldom.sourceforge.net/并开始玩它。

我可以做一些非常简单的练习,但我还没有想好如何做这个项目。充其量,我一次只能更改一个元素。

我有一个数据库查询,它从我的数据库中提取一篇文章作为$Content。如果我想用"土豚"代替"斑马",我会这样做:

$Content = str_replace('zebra', 'aardvark', $Content);
echo $Content;

我如何插入这个HTML解析器,以便将所有的类、顺序div和glyphicons添加到混合中?

phpQuery非常擅长这种操作