首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从内容中获取图像:编码标记

从内容中获取图像:编码标记
EN

Stack Overflow用户
提问于 2013-07-09 01:15:54
回答 1查看 1.2K关注 0票数 0

我正试图在我的magento网站上显示RSS提要,而且我在显示提要的图像时遇到了困难。通过对提要的研究,我发现图像在一个内容中:编码标记,所以我不能通过使用$item->image之类的东西直接访问它。以下是我的当前代码:

代码语言:javascript
复制
<?php $channel = new Zend_Feed_Rss('newsfeedurl'); ?>
<?php foreach ($channel as $item): ?>
    <?php if($i<2) { ?>
        <img src="<?php echo $item->image; ?>" title="<?php echo $item->title; ?>" height="63" width="95" />
        <?php echo "image:".$item->content; ?>
    <?php } else {} ?>
    <?php $i++; ?>
<?php endforeach; ?>    
$?>

我也尝试使用$item->content,但是它返回了新闻提要的全部内容。因此,我的问题是,如何从内容访问图像的源:编码,以便在我的提要上显示它?

更新:经过更多的研究后,我尝试使用preg_match : preg_match('/<*img^>*src =“?‘?(^”\’)/i‘,$item->content,$matches);echo $matches;我得到了正确的图像路径,但是我已经把它放在一个循环中,所以我应该至少有两个图像,但我只得到1。为什么会这样?

解决:我通过将$matches更改为$matches1来解决我的问题。我想我使用的是0,认为它是数组匹配的索引。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-09 02:48:35

为了从内容:编码标记中获取图像源,我使用了正则表达式(preg_match)。下面是我当前代码的外观:

代码语言:javascript
复制
<?php $channel = new Zend_Feed_Rss('newsfeedurl'); ?>
<?php foreach ($channel as $item): ?>
    <?php preg_match('/<*img[^>]*src *= *["\']?([^"\']*)/i', $item->content, $matches); ?>
    <?php if($i<2) { ?>
        <img src="<?php echo $matches[1]; ?>" title="<?php echo $item->title; ?>" height="63" width="95" /></a></div>
    <?php } else {} ?>
    <?php $i++; ?>
<?php endforeach; ?>

希望这能帮到别人。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17538444

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档