目前很多的網站提供免費個人部落格服務,如Google,新浪,網易等等,如何將免費的部落格充分利用起來,需要我們在使用過程中不斷總結與思考,對程式設計師來說,如何使用PHP取得Blogger部落格RSS或Atom資料顯得非常重要,在這裡簡單的跟大家介紹一下使用PHP取得blogger部落格RSS或Atom資料的基本方法,以PHP取得google的Blogger部落格資料為實例,了解PHP取得RSS或Atom資料的基本原理,供參考。
PHP取得部落格資料使用前提
有一個Google的Blogger免費空間。
取得免費空間的RSS或Atom位址http://shifen.blogspot.com/feeds/posts/default
PHP取得部落格資料實例碼
<ol class="dp-xml"> <li class="alt"><span><span>$</span><span class="attribute">blogUrl</span><span> = </span><span class="attribute-value">'http://shifen.blogspot.<br>com/feeds/posts/default'</span><span>; </span></span></li> <li> <span>$</span><span class="attribute">atom</span><span> = </span><span class="attribute-value">simplexml_load_file</span><span> ( $blogUrl ); </span> </li> <li class="alt"> <span>$atom-</span><span class="tag">></span><span>registerXPathNamespace (<br> 'atom', 'http://www.w3.org/2005/Atom' ); </span> </li> <li> <span>$</span><span class="attribute">title</span><span> = $atom-</span><span class="tag">></span><span>title; </span> </li> <li class="alt"> <span>$</span><span class="attribute">subtitle</span><span> = $atom-</span><span class="tag">></span><span>subtitle; </span> </li> <li> <span>$</span><span class="attribute">blogFeeds</span><span> = $atom-</span><span class="tag">></span><span>link [0] [href]; </span> </li> <li class="alt"> <span>$</span><span class="attribute">blogURL</span><span> = $atom-</span><span class="tag">></span><span>link [2] [href]; </span> </li> <li> <span>$</span><span class="attribute">blogNextURL</span><span> = $atom-</span><span class="tag">></span><span>link [3] [href]; </span> </li> <li class="alt"> <span>$</span><span class="attribute">entrys</span><span> = $atom-</span><span class="tag">></span><span>xpath ( '//atom:entry' ); </span> </li> </ol>
PHP取得部落格資料程式碼分析
1,定義部落格blogger位址,如:$blogUrl = 'http://shifen.blogspot.com/feeds/posts/default' ;
2,使用PHP內建simplexml_load_file函數將blogger的XML資料轉換成物件。
simplexml_load_file相關知識(具體查看PHP手冊)
說明:simplexml_load_file 將一個XML文件裝載入一個物件中。
原型:simplexml_load_file ( filename [,class_name [,options [, ns [, is_prefix]]]] )
3,使用PHP內建registerXPathNamespace函數為下一次 XPath 查詢建立命名空間語境。與前面simplexml_load_file函數組合,支援提供命名空間,Blogger的命名空間使用的是http://www.w3.org/2005/Atom,方便呼叫Blogger的RSS或Atom資料。
4,取得Blogger的RSS或Atom資料。
(1)取得Blogger部落格空間標題,如:$atom->title,回傳:十分愉快
(2)取得Blogger部落格空間次標題,如:$atom->subtitle,回傳:學東西總是好的,能讓你十分愉快!
(3)取得Blogger部落格RSS位址,如:$atom->link [0] [href],回傳:http://shifen.blogspot.com/feeds/posts/default
(4)獲取Blogger部落格URL位址,如:$atom->link [2] [href],回傳:http://shifen.blogspot.com/
(5)取得Blogger部落格RSS的下一頁位址,如:$ atom->link [3] [href],返回:http://shifen.blogspot.com/feeds/posts/default?start-index=26&max-results=25
(6)取得Blogger部落格文章內容,如:$atom->xpath ( '//atom:entry' ),傳回文章數組,預設最新發布的25篇文章。
上面PHP取得部落格資料實例可知,PHP取得Blogger部落格RSS或Atom資料使用simplexml_load_file和registerXPathNamespace兩個內建函數即可輕鬆實作。