使用php DomeElement和值的开头获取特定输出?

使用php DomeElement和值的开头获取特定输出?,php,html,dom,Php,Html,Dom,以下是HTML代码: <table> <tr> <td>value1</td> <td>value2</td> <td><a href="mailto:example@mail.com">mailto:example@mail.com</a></td> </tr> </table> 试图通过查找起始“mailto”值导出

以下是HTML代码:

<table>
  <tr>
    <td>value1</td>
    <td>value2</td>
    <td><a href="mailto:example@mail.com">mailto:example@mail.com</a></td>
  </tr>
</table>
试图通过查找起始“mailto”值导出具有
href
属性的所有子
a
元素,但未得到任何结果,因此,不确定我的代码有何问题


如何导出以
mailto
开头的
href
属性的所有值

如果要从文件名/URL加载HTML,则需要使用
DOMDocument::loadHTMLFile()
,而不是
DOMDocument::loadHTML()
。后者需要一个HTML字符串,而不是文件名或URL。

tr
没有
href
属性
td中的a
具有。
$links=$dom->getElementsByTagName('td')td
s不是链接。尝试
$links=$dom->getElementsByTagName('a')谢谢@u_mulder,问题已编辑。现在:
td
没有
href
属性<代码>一个
td
中的
has。
substr($linkatt,0,5)
将使用5个符号<代码>邮件收件人
有6个。
$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;
    }
}