Fin*_*ish 2 html php html5 simple-html-dom
我正在使用一个需要使用PHP Simple HTML Dom Parser的项目,我需要一种方法来根据类名向一些元素添加自定义属性.
我能够使用foreach循环遍历元素,并且很容易设置标准属性,如href,但我找不到添加自定义属性的方法.
我猜的最接近的是:
foreach($html -> find(".myelems") as $element) {
$element->myattr="customvalue";
}
Run Code Online (Sandbox Code Playgroud)
但这不起作用.
我已经看到了类似主题的其他一些问题,但他们都建议使用另一种方法来解析html(domDocument等).在我的情况下,这不是一个选项,因为我必须使用简单的HTML DOM解析器.
你试过吗?试试这个例子(示例:添加数据标签).
include 'simple_html_dom.php';
$html_string = '
<style>.myelems{color:green}</style>
<div>
<p class="myelems">text inside 1</p>
<p class="myelems">text inside 2</p>
<p class="myelems">text inside 3</p>
<p>simple text 1</p>
<p>simple text 2</p>
</div>
';
$html = str_get_html($html_string);
foreach($html->find('div p[class="myelems"]') as $key => $p_tags) {
$p_tags->{'data-index'} = $key;
}
echo htmlentities($html);
Run Code Online (Sandbox Code Playgroud)
输出:
<style>.myelems{color:green}</style>
<div>
<p class="myelems" data-index="0">text inside 1</p>
<p class="myelems" data-index="1">text inside 2</p>
<p class="myelems" data-index="2">text inside 3</p>
<p>simple text 1</p>
<p>simple text 2</p>
</div>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3443 次 |
| 最近记录: |