如何解决图片是属性还是我必须使用正则表达式来获取它?
| 我正在尝试获取提要的每个帖子的第一张图片。图像始终在每个ѭ0内存在,如下所示<description><p><a href=\"http://lh5.ggpht.com/-kDNySEwupXc/Tesp_XbEXQI/AAAAAAAAKZY/t5TMtq7SkCs/s1600-h/image%25255B4%25255D.png\">< ....></description>
我得到如下标题,作者和其他内容
foreach ($entries as $entry) {
echo \"<pre>\"; echo $entry->title; echo\" -- \"; echo $entry->author; echo\" -- \"; echo $entry->pubDate; echo\"<br>\"; echo \"</pre>\";
}
但是我不知道图像是否是描述中的属性。如果是这样,我该怎么显示?我想这个解决方案比使用像这样的正则表达式来获取第一张图片要容易和快捷得多:
preg_match(\'!http://.+\\.(?:jpe?g|png|gif)!Ui\'
如果正则表达式是唯一的解决方案,我该如何使用它?
谢谢
解决方法
您可以执行使用DOM解析器的始终可靠的方法。
$dom = new DOMDocument;
$dom->loadXML(html_entity_decode($entry->description));
$imageSrc = $dom->getElementsByTagName(\'a\')->item(0)->getAttribute(\'href\');
键盘。
您可能需要扩展代码以处理缺少的a
元素(检查lengtg
属性)或缺少的href
属性(使用hasAttribute()
方法)。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。