我想从RSS提要获取img src,但我只需要 <div class="img"
中的图像而不是任何其他 class="favicon"
img src . 但当我得到图像时,它会返回图标 . 我该如何解决?这是供稿链接“http://rss.disp.cc/PttHot.xml” . 这是我的代码:
<?php
$ptt = simplexml_load_file('http://rss.disp.cc/PttHot.xml');
foreach ($ptt->entry as $entry ) {
$content = $entry -> content;
preg_match('/<img.+src=[\'"](?P<src>.+?)[\'"].*>/i', $content, $images);
if(!empty($images)){$img = $images[1];}else{$img="";}?>
我试图从内容中获取图像,这里有多个 img src
内容,但我只需要 <div class="image">
和 img style="max-width:100%;"
内的原始图像而不是其他额外的图标 . 请帮助 - 我尝试了多种解决方案,但我无法修复 .
1 回答
也许您可以使用xpath表达式而不是使用DOMDocument的正则表达式 .
$entry->content
包含html,因此您可以使用loadHTML加载它 .然后你可以使用xpath表达式来获取
img
标签://div[contains(@class, 'img')]/img[contains(@style, 'max-width:100%') and not(contains(@class,'favicon'))]
例如: