$xml_file='RSS路徑';
$fp = fopen($xml_file,'r');
//使用外部連結時的fread方法
$contents = '';
while (!feof($fp)) {
$contents .= fread($fp, 8192);
}
//建立一個解析器,編碼不是必要的,這邊設定utf-8
$XmlPr = xml_parser_create('utf-8');
//建立起始和終止元素處理器
xml_set_element_handler($XmlPr,"startElement","endElement");
//建立資料處理器
xml_set_character_data_handler($XmlPr,"characterData");
//開始解析xml檔
$ResXml = xml_parse($XmlPr,$contents);
//起始字完處理器
function startElement($parser, $name, $attrs){
global $depth, $stack, $tree;
$stack = strtolower($name);
if( $stack == 'item' ) $depth++;
}
//終止字完處理器
function endElement($parser, $name){}
//資料處理器
function characterData($parser, $data){
global $depth, $stack, $tree;
if(trim($data) != ""){
$tree[$depth][$stack] = $data;
}
}
資料參考 : http://blog.hsin.tw/2008/php-parse-xml/
0 Comment:
張貼留言