RSS(Really Simple Syndication)是一种描述和同步网站内容的格式,是使用最广泛的XML应用。RSS搭建了信息迅速传播的一个技术平台,使得每个人都成为潜在的信息提供者。
本文实例为大家分享了php ajax异步读取rss文档数据的相关代码,供大家参考,具体内容如下
代码如下:
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
< html > < head > < script > function showRSS(str) { if (str.length==0) { document.getElementById("output").innerHTML=""; return; } if (window.XMLHttpRequest) { xmlhttp=new XMLHttpRequest(); } else { xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("output").innerHTML=xmlhttp.responseText; } } xmlhttp.open("GET","rss.php?q="+str,true); xmlhttp.send(); } </ script > </ head > < body > < p >Please Select an option to get RSS:</ p > < form > < select onchange = "showRSS(this.value)" > < option value = "" >Select an RSS-feed:</ option > < option value = "cnn" >CNN</ option > < option value = "bbc" >BBC News</ option > < option value = "pc" >PC World</ option > </ select > </ form > < br > < div id = "output" >RSS-feeds</ div > </ body > </ html > |
rss.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
<?php $q = $_GET [ "q" ]; if ( $q == "cnn" ) { $xml =( "http://rss.cnn.com/rss/cnn_topstories.rss" ); } elseif ( $q == "bbc" ) { $xml =( "http://newsrss.bbc.co.uk/rss/newsonline_world_edition/americas/rss.xml" ); } elseif ( $q = "pcw" ){ $xml =( "http://www.pcworld.com/index.rss" ); } $xmlDoc = new DOMDocument(); $xmlDoc ->load( $xml ); $channel = $xmlDoc ->getElementsByTagName( 'channel' )->item(0); $channel_title = $channel ->getElementsByTagName( 'title' )->item(0)->childNodes->item(0)->nodeValue; $channel_link = $channel ->getElementsByTagName( 'link' )->item(0)->childNodes->item(0)->nodeValue; $channel_desc = $channel ->getElementsByTagName( 'description' )->item(0)->childNodes->item(0)->nodeValue; echo ( "<p><a href='" . $channel_link . "'>" . $channel_title . "</a>" ); echo ( "<br>" ); echo ( $channel_desc . "</p>" ); $x = $xmlDoc ->getElementsByTagName( 'item' ); for ( $i =0; $i <=2; $i ++) { $item_title = $x ->item( $i )->getElementsByTagName( 'title' )->item(0)->childNodes->item(0)->nodeValue; $item_link = $x ->item( $i )->getElementsByTagName( 'link' ) ->item(0)->childNodes->item(0)->nodeValue; $item_desc = $x ->item( $i )->getElementsByTagName( 'description' ) ->item(0)->childNodes->item(0)->nodeValue; echo ( "<p><a href='" . $item_link . "'>" . $item_title . "</a>" ); echo ( "<br>" ); echo ( $item_desc . "</p>" ); } ?> |
以上就是本文的全部内容,希望对大家学习php程序设计有所帮助。