我想从我要输出某些特定数据的网站上获取内容。那里的数据看起来像这样:
<a itemprop="email">office@xy.com</a>
从这种类型的数据中,我只想输出电子邮件地址。
这是代码:
<?php
$homepage = file_get_contents('https://www.xy.com/');
echo $homepage;
?>
答案 0 :(得分:0)
您应该使用解析器。这将比正则表达式或字符串函数更准确。
$dom = new domdocument();
$dom->loadhtml('<a itemprop="email">office@xy.com</a>');
$xpath = new DOMXPath($dom);
echo $xpath->query('//a[@itemprop="email"]')[0]->nodeValue;
您可以在此处阅读更多内容。
使用xpath的另一种方法是选择所有链接,然后寻找属性。
$dom = new domdocument();
$dom->loadhtml('<a itemprop="email">office@xy.com</a>');
$links = $dom->getElementsByTagName('a');
foreach($links as $link) {
if($link->getAttribute('itemprop') == 'email') {
echo $link->nodeValue;
}
}