我有一个html字符串,其中只包含一个元素。例如:用php修改html属性
<a href="http://www.test.com" rel="nofollow external">test</a>
在PHP一定要考,如果相对包含外部,如果是,则修改HREF和保存的字符串。
我查找了DOM节点和对象。但它们对于只有一个A元素似乎太多了,因为我必须迭代以获得html节点,并且我不确定如何测试是否存在并包含外部。
$html = new DOMDocument();
$html->loadHtml($txt);
$a = $html->getElementsByTagName('a');
$attr = $a->item(0)->attributes();
...
在这一点上,我将获得NodeMapList似乎是开销。有没有更简单的方法呢,还是应该用DOM来完成?
当DOM处理,你有两种选择:1)使用本地DOM解析器2)使用正则表达式(这是开销) – Yang 2013-04-21 01:47:28
继续前进。使用'DOMDocument()'进行操作 – Yang 2013-04-21 01:48:10
没有人应该使用原始DOM方法进行操作。考虑phpQuery或QueryPath等,以减少繁琐的样板。 – mario 2013-04-21 01:48:32