Heim  >  Artikel  >  Backend-Entwicklung  >  用php实现动态产生xml文件以及从xml文件中抽取数据转化成html的小程序_PHP教程

用php实现动态产生xml文件以及从xml文件中抽取数据转化成html的小程序_PHP教程

WBOY
WBOYOriginal
2016-07-13 17:31:58995Durchsuche

这个东东搞了我一天。。。可是到最后发现却无法实现自己想像中的那种效果。。。真是可惜。。。看来php(做为现在的主流开发语言)对xml(标准化越来越近了)还需要加强。。。如果哪位对此有研究。欢迎来信探讨。。。

首先建表:
CREATE TABLE books (
bookid int(4) NOT NULL auto_increment,
bookname varchar(100) NOT NULL,
bookauth varchar(50) NOT NULL,
bookpublisher varchar(50) NOT NULL,
bookpubdate datetime NOT NULL,
bookurl varchar(50) NOT NULL,
KEY bookid (bookid),
);

然后。。。这段是从MySQL(和PHP搭配之最佳组合)里取数据转化成xml(标准化越来越近了)的源代码:

$connect_id=MySQL(和PHP搭配之最佳组合)_connect("localhost","root","");
MySQL(和PHP搭配之最佳组合)_select_db("bbs",$connect_id);
$query="select * from books order by bookid";
$rs=MySQL(和PHP搭配之最佳组合)_query($query,$connect_id);
$numfields=MySQL(和PHP搭配之最佳组合)_num_fields($rs);
$xml(标准化越来越近了)file="(标准化越来越近了) version="1.0" encoding="GB2312"?>n";
$xml(标准化越来越近了)file.="n";

while($row=MySQL(和PHP搭配之最佳组合)_fetch_array($rs)){
for($i=0;$i$fieldname=MySQL(和PHP搭配之最佳组合)_field_name($rs,$i);
$xml(标准化越来越近了)file.="" . $row[$i] . "" . $fieldname . ">n";
}
}
MySQL(和PHP搭配之最佳组合)_free_result($rs);
MySQL(和PHP搭配之最佳组合)_close($connect_id);
$xml(标准化越来越近了)file.="n";
$fp=fopen("xml(标准化越来越近了)doc/xml(标准化越来越近了)doc.xml(标准化越来越近了)","w");
if(fwrite($fp,$xml(标准化越来越近了)file)){
echo "写入文件成功!";
}
else{
echo "写入文件失败!";
}
?>

这段是从xml(标准化越来越近了)里取数据转化成HTML的源代码。。。

class xml(标准化越来越近了){
var $parser;

function xml(标准化越来越近了)(){
$this->parser = xml(标准化越来越近了)_parser_create();
xml(标准化越来越近了)_set_object($this->parser,&$this);
xml(标准化越来越近了)_set_element_handler($this->parser,"tag_on","tag_off");
xml(标准化越来越近了)_set_character_data_handler($this->parser,"cdata");
}

function parse($data){
xml(标准化越来越近了)_parse($this->parser,$data);
}

function tag_on($parser,$tag,$attributes){
if(xml(标准化越来越近了)_get_current_line_number($parser)==2){
echo "

" . $tag . "";
}
else{
switch ((xml(标准化越来越近了)_get_current_line_number($parser)-2)%6){
case 0:
echo " 下载 ";
break;
case 1:
echo " ID号 ";
break;
case 2:
echo " 书名 ";
break;
case 3:
echo " 作者 ";
break;
case 4:
echo " 出版社 ";
break;
case 5:
echo " 出版日期 ";
break;
}
}
}

function cdata($parser,$cdata){
echo $cdata;
}

function tag_off($parser,$tag){
echo "n";
}
}

$xml(标准化越来越近了)_parser = new xml(标准化越来越近了)();
$xml(标准化越来越近了)filename="xml(标准化越来越近了)doc/xml(标准化越来越近了)doc.xml(标准化越来越近了)";
$fp=fopen($xml(标准化越来越近了)filename,"r");
$xml(标准化越来越近了)data=fread($fp,filesize($xml(标准化越来越近了)filename));
?>

图书信息



$xml(标准化越来越近了)_parser->parse($xml(标准化越来越近了)data);
?>

其实你们应该看得出。。这个例子是个失败的东东。。。因为效果不大。。根本不能得到自己想要的东东。。。唉。。。苦。。。。

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/508890.htmlTechArticle这个东东搞了我一天。。。可是到最后发现却无法实现自己想像中的那种效果。。。真是可惜。。。看来php (做为现在的主流开发语言) 对...
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn