【发布时间】:2018-07-23 16:56:22
【问题描述】:
这是 HTML 代码:
<table>
<tr>
<td>value1</td>
<td>value2</td>
<td><a href="mailto:example@mail.com">mailto:example@mail.com</a></td>
</tr>
</table>
还有,php:
$html = 'http://www.example.com'; // target path
$dom = new DOMDocument;
@$dom->loadHTML($html);
$links = $dom->getElementsByTagName('a');
foreach ($links as $link){
$linkatt = $link->getAttribute('href');
$linkval = substr($linkatt, 0, 5 );
if($linkval == "mailto"){
echo $link->nodeValue;
}
}
试图通过查找起始“mailto”值来导出所有具有href 属性的子a 元素,但没有得到任何结果,所以不确定我的代码有什么问题......
我怎样才能完成它,导出以mailto开头的href属性的所有值...?
【问题讨论】:
-
tr具有 nohref属性。a在td有。 -
$links = $dom->getElementsByTagName('td');这听起来已经不对了。tds 不是链接。试试$links = $dom->getElementsByTagName('a'); -
感谢@u_mulder,问题已编辑。
-
现在:
td具有 nohref属性。a在td有。 -
substr($linkatt, 0, 5)将采用 5 个符号。mailto有 6.