1. Home
  2. /
  3. Web technology
  4. /
  5. PHP
  6. /
  7. [ PHP ] –...

[ PHP ] – RSS 讀取範例 以陣列儲存結果

評等結果
點擊便能為這篇文章進行評等!
[評等總次數: 0,平均評等: 0]

[php]
<?php
$rss="http://www.cw.com.tw/RSS/industry.xml";//rss 網址
$rssfeed =array();
array_push($rssfeed,$rss);
//設置編碼為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") {
//構造輸出字符串
$is_item = 0;
$finish.=$title.’&nbsp;’;//將結果串接起來 以 &nbsp; 做分割
}
//僅讀取item標籤中的內容
if ($is_item == 1) {
if ($tag == "title") {
$title = $value;
}
if ($tag == "link") {
$link = $value;
}
}
}
}
$output=array();
$output = explode("&nbsp;", $finish);//依 &nbsp; 來分割字串 將分割結果存入陣列
array_pop($output);//移除最後一個陣列元素
print_r($output);//顯示陣列
?>
[/php]
顯示結果:
Array ( [0] => 時代移轉,台灣麥當勞走向下一個時代 [1] => 鐵碳企業成為台灣品牌新尖兵 [2] => 嚴凱泰得子好心情藏不住 專業股東提問有問必答 [3] => 全球勞動人口持續縮減,智慧型機器人市場需求將快速成長 [4] => 全球勞動人口持續縮減,智慧型機器人市場需求將快速成長 [5] => 寄出的email 不再是覆水難收 [6] => 史丹佛大學驚人研究,地球史上第六次物種滅絕已敲響鐘 [7] => 陸股跳水 是崩盤還是修正? [8] => 寫下台灣民宿的夢想 傳遞感動 [9] => 「換日線」海外青年有話要說 [10] => 拯救員工人生 比數鈔票更幸福 [11] => 一百個驚喜書袋 獨立書店創完售奇蹟 [12] => 韓家寰x姚量議:小農生命力 你該去法國看看(2) [13] => Apple Music試聽不付版稅 小天后戰勝大蘋果 [14] => 軟銀Pepper一分鐘秒殺 與機器人搏感情的時代來了 [15] => 邊走路邊滑手機 設專用人行道是好主意? [16] => 空拍機發燒 天空商機開戰 [17] => 鄉民的「創世神」 挑戰科技無極限 [18] => 「紅金」番紅花 為什麼比黃金還貴? [19] => 好喝咖啡背後:竟是美麗愛情;壞消息是:它快絕種了 )

評等結果
點擊便能為這篇文章進行評等!
[評等總次數: 0,平均評等: 0]

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *