您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息
三六零分类信息网 > 鸡西分类信息网,免费分类信息发布

读取rrs的php

2024/3/25 7:50:33发布22次查看
以前因为做学校论坛的需要,曾经写过一个读取shou论坛rrs的一段php,写出来以供大家参考
php
// 下面就是定义函数来提取数据:
// 处理开始标记的属性指
// $attrs是一个多维数组,键值为属性名, 值就是该属性的值
function  startelement( $parser ,   $element_name ,   $attrs ){
global    $temp ,   $current_tag ;
$current_tag   =   $element_name ;
switch ( $element_name ){
case   ' item ' :
echo   '' ;
break ;
default :
break ;
}
}
//  $current_tag告诉我们正在处理的标记,我们随后会在characterdata函数中使用
function  endelement( $parser ,   $element_name ,   $attrs ){
global    $temp ,   $current_tag ;
switch ( $element_name ){
case   ' item ' :
return_page( $temp );
$temp   =   '' ;
break ;
default :
break ;
}
}
//  传送给此函数的是元素间的数据
// 例如,对
title here,$data就等于'title here'
function  characterdata( $parser ,   $data ){
global   $current_tag ,   $temp ,   $catid ;
switch ( $current_tag ){
case   ' title ' :
$temp [ ' title ' ]  =   $data ;
$current_tag   =   '' ;
break ;
case   ' link ' :
$temp [ ' url ' ]  =   $data ;
$current_tag   =   '' ;
break ;
case   ' author ' :
$temp [ ' author ' ]  =   $data ;
$current_tag   =   '' ;
case   ' description ' :
$temp [ ' description ' ]  =   $data ;
$current_tag   =   '' ;
default :
break ;
}
}
?>
php
function  return_page(){
global   $temp ;
echo   ' o  ' . $temp [ ' title ' ] . '
' ;
}
//  分析的内容,即rrs的未知,可以是网络位置,也可以是文件
$xml_file   =   ' http://club.sohu.com/list-70th-0-0.xml ' ;
//  定义字符集,默认是utf-8
//$type = 'utf-8';
// 建立解析器
$xml_parser   =   xml_parser_create ();
//  设置解析选项
//xml_parser_set_option($xml_parser, xml_option_case_folding, true);
//xml_parser_set_option($xml_parser, xml_option_target_encoding, 'utf-8');
// 告诉php发现元素时要调用什么函数
// 这些函数同时也处理元素的属性
xml_set_element_handler ( $xml_parser ,   ' startelement ' , ' endelement ' );
// 告诉php对字符数据调用什么函数
xml_set_character_data_handler ( $xml_parser ,   ' characterdata ' );
if  ( ! ( $fp   =   fopen ( $xml_file ,   ' r ' ))) {
die ( 因网络问题,暂时无法获得数据,请稍候刷新再试 );
}
//  通过循环来解析整个文件
while  ( $data   =   fread ( $fp ,   1024 ))
{
xml_parse ( $xml_parser ,   $data ,   feof ( $fp ));
}
fclose ( $fp );
xml_parser_free ( $xml_parser );
?>
另外可以加一段,用来预载网页的javascript的脚本
script >
script >
style >
sohu论坛 b >   font >
正在加载请稍等 … …  font > td >
tr >
table >
鸡西分类信息网,免费分类信息发布

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录