糯米文學吧

位置:首頁 > 計算機 > php語言

在PHP中使用RSS技術的方法

php語言1.63W

RSS(簡易信息聚合,也叫聚合內容)是一種描述和同步網站內容的格式,簡單地説就是用於在網站間分享信息。下面是本站小編收集整理的在PHP中使用RSS技術的方法,希望對您有所幫助!

在PHP中使用RSS技術的方法

  1 RSS 語法

RSS (簡易信息聚合, 也叫聚合內容) 是一種描述和同步網站內容的格式, 簡單地説就是用於在網站間分享信息。RSS 目前廣泛 用於網上新聞頻道、 及 wiki 等。使用 RSS 訂閲能更快地獲取信息, blog 網站提供 RSS 輸出, 有利於讓用户獲取網站內容的最新更 新。網絡用户可以在客户端藉助於支持 RSS 的聚合工具軟件, 在不打開網站內容頁面的情況下閲讀支持 RSS 輸出的網站內容。[1] RSS 文檔使用一種簡單的自我描述的語法, 下面的代碼段( ) 構成了一個簡單的 RSS 文檔: <?xml version="1.0" encoding="ISO-8859-1" ?> <rss version="2.0"> <channel> <title>Home Page</title> <link></link> <description>A University Located IN Yunnan Province</description> <item> <title>The Institute of Physics </title> <link>http:// /rss</link> <description>New RSS FROM BSNC</description> </item> </channel> </rss> 代碼清單中的第一行: XML 聲 明, 用 於 定 義 文 檔 中 使 用 的 XML 版 本 和 字 符 編 碼 。 該 例 子 遵 守 XML 1.0 規 範 , 使 用 並 ISO-8859-1 (Latin-1/West European) 字符集。下一行是標識此文檔是一個 RSS 文檔的 RSS 聲明 (這裏是 RSS version 2.0) 。下一行 含有 <channel> 元素, 此元素用於描述 RSS feed。 <channel> 元素有三個必需的子元素: <title> - 定義頻道的標題。 (比如 Home Page) <link> - 定義到達頻道的超鏈接。 (比如 ) <description> - 描述此頻道 University Located In Yunnan Province) (A 每個 <channel> 元素可擁有一個或多個 <item> 元素。每個 <item> 元素可定義 RSS feed 中的一篇文章或 "story"。<item> 元素 擁有三個必需的子元素: <title> - 定義項目的標題。 (比如 The Institute of Physics) <link> - 定義到達項目的超鏈接。 (比如 http:// /rss) <description> - 描述此項目 (比如 New RSS FROM BSNC)

  2 如何在 PHP 中使用 RSS

在很多 PHP 語言編寫的 RSS 工具中, MagpieRSS 是一個很突出的 RSS 解析器。MagpieRSS(簡稱 Magpie)是由 Kellan Elliott-Mc? Crea 使用 PHP 編寫的一個強大的 RSS 解析器。Magpie 為開發人員提供了一種非常簡潔實用的方式來獲取和顯示 RSS 提要, 其主要 特點如下:

  網絡通訊及安全

Computer Knowledge and Technology 電腦知識與技術

簡單易用: 通過幾行簡單的代碼就能夠獲取和解析 RSS 提要, 並轉換為網絡用户容易閲讀的格式。 高度的兼容性: Magpie 支持各種 RSS 版本中的幾乎所有標籤集合以及開發人員自己定義的標籤, 只要格式正確, Magpie 就能成 功解析。 帶寬佔用率低: 默認認情況下, Magpie 將提要內容緩存為 60 分鐘 (當然我們可以根據實際需要修改此值, 以適合各種提要的緩 存首選項。[2] 2.1 安裝 Magpie 與大多數 PHP 類一樣, Magpie 的安裝非常簡單, 只需將相關的文件放在 PHP 腳本能夠引用的目錄中, 安裝步驟如下: 1) 下載 Magpie。 從 2) 將包的內容解壓至一個便於從 PHP 腳本包含的位置。 3) 在腳本中包含 Magpie 類 (rss_) : require 'magpie/') ( ;

  2.2 Magpie 如何解析

RSS 提供了一種規範化的方式, 基於 XML 格式封裝網站內容, 這稱為提要 (feed) 。Magpie 解析提要時, 將其放在四個字段(chan? nel、 image、 items 和 textinput)的對象中。其中, channel 是一個關聯數組的數組, 其餘三個是關聯數組。我們可以通過以下 PHP 腳本 獲取 提要, 使用 print_r()語句輸出: 2.3 如何顯示 RSS 提要 我們可以通過以下 javascript 代碼顯示 RSS 提要, 用下段代碼實現調用。 var STORE_KEY_FeedURL = "gf_FeedURL"; var STORE_KEY_FeedName = "gf_FeedName"; GF_RSS_URL= " GF_RSS_TITLE = "Yahoo! Answers"; function gf_showRssView() { lementById("tickerView")lay = "none"; referenceForKey(GF_RSS_URL, STORE_KEY_FeedURL); referenceForKey(GF_RSS_TITLE, STORE_KEY_FeedName); init(); } 把這些文件添加到你的'工程, 並且將下段代碼插入到你的 PHP 主文件中。

  2.4 緩存提要

  3 結論

默認情況下, magpie 緩存 60 分鐘, 這是因為一般的提要不太可能一小時內更新超過 1 次。因此, 即使經常嘗試獲取相同的提 要, 比如每 5 分鐘一次, 也不會出現任何更新, 直到提要緩存達到 60 分鐘為止。但有些提要確實會在一小時內發佈多次, 或者可能 用來發布更緊急的信息。為了完全禁用緩存, 可以禁用常量 MAGPIE_CACHE_ON, 如下: define ("MAGPIE_CACHE_ON",0) 為修改默認的緩存時間(以秒為單位) 可以修改常量 MAGPIE_CACHE_AGE,如下: , define "MAGPIE_CACHE_AGE",1800) ( 最後, 可以選擇在獲取失敗時顯示一個錯誤, 而不是顯示緩存的提要, 這需要啟用常量 MAGPIE_CACHE_FLASH_ONLY: define("MAGPIE_CACHE_FLASH_ONLY",1)

使用 RSS 訂閲能幫助網絡用户更快地獲取信息, 有利於讓用户獲取網站內容的最新更新。該文對 RSS 的語法及 PHP 環境下的 MagpieRSS 解析器的安裝、 解析機制、 解析過程等方面進行了初步的探討, 希望能夠對 PHP 開發人員有一定的幫助。

標籤:PHP RSS 技術