前几天撤掉了bbs.sdtclass.com这个社区,然后用这个域名改版为网盘,想到了网盘调用本站最新文章,去百度了一圈,发现要不是调用的没有连接,要不调用的有乱码,于是后来结合修改得到了下面的代码!空间服务器支持php就行!
代码参考互联网,如下:
- <?php
- //RSS地址,列如:http://www.sciencenet.cn/xml/news.aspx?news=0
- $rssfeed = array("http://www.sdtclass.com/feed");
- //设置编码为UTF-8 ,没了这个会乱码
- header('Content-Type:text/html;charset= UTF-8');
- for($i=0;$i<sizeof($rssfeed);$i++){//分解开始
- $buff = "";
- $rss_str="";
- //打开rss地址,并读取,读取失败则中止
- $fp = fopen($rssfeed[$i],"r") or die("can not open $rssfeed");
- while ( !feof($fp) ) {
- $buff .= fgets($fp,4096);
- }
- //关闭文件打开
- fclose($fp);
- //建立一个 XML 解析器
- $parser = xml_parser_create();
- //xml_parser_set_option -- 为指定 XML 解析进行选项设置
- xml_parser_set_option($parser,XML_OPTION_SKIP_WHITE,1);
- //xml_parse_into_struct -- 将 XML 数据解析到数组$values中
- xml_parse_into_struct($parser,$buff,$values,$idx);
- //xml_parser_free -- 释放指定的 XML 解析器
- xml_parser_free($parser);
- foreach ($values as $val) {
- $tag = $val["tag"];
- $type = $val["type"];
- $value = $val["value"];
- //标签统一转为小写
- $tag = strtolower($tag);
- if ($tag == "item" && $type == "open"){
- $is_item = 1;
- }else if ($tag == "item" && $type == "close") {
- //构造输出字符串 ,显示的地方,可以自定义!
- $rss_str .= "<div class=\"result_list\"><a href='".$link."' target=_blank>".$title."</a></div><div class=\"line\"></div>";
- $is_item = 0;
- }
- //仅读取item标签中的内容
- if($is_item==1){
- if ($tag == "title") {$title = $value;}
- if ($tag == "link") {$link = $value;}
- }
- }
- //输出结果
- echo $rss_str;
- }
- ?>
把上面的代码,放在要显示调用RSS的地方即可,RSS地址格式不限制,只要该地址是RSS显示的就可以了!比如我在网上找的这个【ttp://www.sciencenet.cn/xml/news.aspx?news=0】,也可以调用,人家网站是ASP的!
效果示例:
2013年04月24日 14:02 -9楼
这个我找了很多,请问速度如何?
2013年04月25日 22:08 地下1层
@第四个李智 还可以吧,你试试就知道了!先用个单独PHP测试!
2013年05月05日 13:25 地下2层
@yumanutong 但是,不能在程序中调 还是感觉比较残缺美
2013年05月05日 20:01 地下3层
@第四个李智 不能在程序中调?你是指什么呢??
2014年02月20日 22:02 地下4层
@yumanutong 不能在主题文件中用?
2014年02月20日 22:12 地下4层
@子曰去哪 嗯嗯
2013年04月24日 14:15 -8楼
很勇敢的反馈用不了。。。
2013年04月25日 22:08 地下1层
@第四个李智 很勇敢的反链?
2013年05月05日 13:23 地下2层
@yumanutong 反馈。。。呵呵
2014年02月20日 22:10 地下3层
@第四个李智 不知所云
2014年02月20日 22:11 地下3层
@第四个李智 你是说不能在wp上用?WP自带这个功能
2014年02月21日 14:24 地下4层
@yumanutong 可惜用的不是wp
你怎么没有用多说。。。。
2014年02月21日 14:30 地下4层
@yumanutong 不是WP也可以用,这个是PHP,不想用就不用,我这个网站已经够肿大了,不想再弄太多东西拖慢速度
2017年12月27日 10:19 -7楼
可以使用,不过如果能够加上日期,能够控制取的数据条数就好了
2018年01月17日 21:45 地下1层
@Loekman 灵活变通下就好了,可以取得日期的