【发布时间】:2013-03-13 18:36:38
【问题描述】:
我目前正在设计一个包含 20 个框的页面,其中每个框代表一个 RSS 提要,使用 simplepie 作为我的解析器。
目前脚本调用每个提要中的第一张图片,丢弃其余图片并将该图片设置为框的背景图片。
对于 20 个提要,我希望尽可能保持代码的小而高效。虽然我理解 $feed01 的单独设置,但 $feed02 是一个必要的混乱邪恶,这是 simplepie 工作所必需的。
我不明白为什么 imageurl() 返回一个空值。
谁能告诉我为什么会这样?
非常感谢
<?php
require_once('isnotabear/php/autoloader.php');
$feed01 = new SimplePie();
$feed01 -> set_feed_url ('http://link/to/rss01');
$success = $feed01 -> init();
$feed01 -> handle_content_type();
$max = $feed01 -> get_item_quantity(); // Where do we end?
$feed02 = new SimplePie();
$feed02 -> set_feed_url ('http://link/to/rss02');
$success = $feed02 -> init();
$feed02 -> handle_content_type();
$max = $feed02 -> get_item_quantity(); // Where do we end?
$start = (isset($_GET['start']) && !empty($_GET['start'])) ? $_GET['start'] : 0; // Where do we start?
$length = (isset($_GET['length']) && !empty($_GET['length'])) ? $_GET['length'] : 1; // How many per page?
function imageurl()
{
if ($success): foreach($feedin->get_items($start, $length) as $item): $feedin = $item-> get_feed();
{
$replace = preg_match( '@src="([^"]+)"@' , $item->get_content(), $match );
$match = preg_replace ('"src="', '', $match);
$match = str_replace('"', "'", $match);
echo $match[0];
}
endforeach;
endif;
};
?>
<!DOCTYPE HTML>
... YADA YADA YADA ...
<a href="#" style="background-image:url(<?php $feedin = $feed01; imageurl(); ?>)"><div> <span>FEED NAME</span></div></a>
【问题讨论】: