PHP 和 AJAX:缓存 RSS 数据
考虑以下 AJAX 调用,以在单击事件上加载 RSS 新闻数据:
$(function() {
$(document).ready(function() {
$('.msg_head').eq(0).click(function(){
$('.msg_body').eq(0).load('printSideNews.php');
$('.loadMessage').eq(2).hide();
});
});
});
printSideNews.php
如下所示:
include ('newsFeed.php');
function printNewsMenu($itemD){
for ($i = 0; $i < 4; $i++) {
if($itemD==null)
echo "An error has occured, please try again later";
$article_title = $itemD[$i]->title;
$article_link = $itemD[$i]->link;
echo "<a href='".$article_link."' title='".$article_title."' target='_blank'>". $article_title. " </a></br>". PHP_EOL;
}
printNewsMenu($itemD);
包含的 newsFeed.php
文件类似于:
$urlD = "someurl";
$xmlD = simplexml_load_file($urlD);
$itemD = $xmlD->channel->item;
我需要缓存 < code>$itemD 或 $xmlD
对象 - 不确定是哪一个。该内容应缓存 1 小时,然后再次从 url 获取。任何有关代码缓存这一混乱的帮助将不胜感激。
Consider the following AJAX call to load RSS news data on click event:
$(function() {
$(document).ready(function() {
$('.msg_head').eq(0).click(function(){
$('.msg_body').eq(0).load('printSideNews.php');
$('.loadMessage').eq(2).hide();
});
});
});
printSideNews.php
looks like this:
include ('newsFeed.php');
function printNewsMenu($itemD){
for ($i = 0; $i < 4; $i++) {
if($itemD==null)
echo "An error has occured, please try again later";
$article_title = $itemD[$i]->title;
$article_link = $itemD[$i]->link;
echo "<a href='".$article_link."' title='".$article_title."' target='_blank'>". $article_title. " </a></br>". PHP_EOL;
}
printNewsMenu($itemD);
The included newsFeed.php
file lloks like:
$urlD = "someurl";
$xmlD = simplexml_load_file($urlD);
$itemD = $xmlD->channel->item;
I need to cache the $itemD
or the $xmlD
object - not sure which one. This should be cached for 1 hour then taken again from the url. Any help with code caching this mess will be greatly appreciated.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
看一下这个函数:
take a look at this function: