资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

php数据库xml PHP数据库增删改查

如何用php从数据库读取数据并生成xml文件

我的思路是,直接使用动态的xml,让flash读取这个文档,这样就不用实时的去生成xml文件了。当然,这个xml文件是.php格式的,所以你必须在flash中吧读取的文件地址改成php的,就跟你写一个php页面一样,不同的是这个php文件输出的内容是一个xml格式的文本。

成都创新互联公司主要从事网站制作、网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务铁门关,十载网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18982081108

比如你现在建立文件 xml.php

?php

echo "?xml version=\"1.0\" encoding=\"utf-8\"?

gallery

settings";

//若此处也有动态信息 按需要进行调用

echo"/settings

items";

//在此循环你的图片数据

$data = ??

while( $data ) {

echo "item source=\"".$data['source']."\" description=\"".$data['description']."\" /";

}

echo '/items';

?

php读取数据库并生成xml文件

?php

//读取数据库我就不说了,从数据库取出来就行了

#使用dom生成xml,注意生成的xml中会没有空格。

$dom=new DOMDocument('1.0','utf-8');

$time = time();

$path="$time.xml"; // $path 为xml文件的存储路径。

$module=$dom-createElement('breakfast_menu');//创建一个节点

$dom-appendChild($module); //在指定元素节点的最后一个子节点之后添加节点

$food=$dom-createElement('food'); //外body

$module-appendChild($food);

$name=$dom-createElement('name'); //内table

$name_value=$dom-createTextNode('测试数据1');

$name-appendChild($name_value);

$food-appendChild($name);

$price=$dom-createElement('price'); //内table

$price_value=$dom-createTextNode('测试数据2');

$price-appendChild($price_value);

$food-appendChild($price);

$description=$dom-createElement('description'); //内table

$description_value=$dom-createTextNode('测试数据3');

$description-appendChild($description_value);

$food-appendChild($description);

$calories=$dom-createElement('calories'); //内table

$calories_value=$dom-createTextNode('测试数据4');

$calories-appendChild($calories_value);

$food-appendChild($calories);

$dom-saveXML();

$dom-save($path);

//var_dump($dom-save($path));exit;

if($dom-saveXML()){

echo "生成成功:".$dom-saveXML();

}else{

echo "生成失败";

}

?

PHP读写XML文件技巧

常用 如下 几行

header("content type:text/; charset=utf "); //指定PHP使用UTF 编码 $xml = simplexml_load_file("example xml"); //读取xml文件 $newxml = $xml asXML(); //标准化$xml $fp = fopen("newxml xml" "w"); //新建xml文件 fwrite($fp $newxml); //写入 xml文件 fclose($fp);

PHP可以方便的生成和读取XML文件 PHP主要通过DOMDocument DOMElement和DOMNodeList来完成XML的读取与写入操作的 下面就简要说明下如何使用这些类

一.生成XML文件 对于一个如下XML文件

[] ?xml version=" " encoding="UTF "? article titlePHP访问MySql数据库 初级篇/title link /article ?xml version=" " encoding="UTF "? article titlePHP访问MySql数据库 初级篇/title link /article 我们来看看如何用PHP来生成

首先new一个DOMDocument对象并设置编码格式

$dom = newDOMDocument( UTF );

$dom formatOutput= true;

再创建article结点和title结点

$rootelement =$dom createElement("article");

$title =$dom createElement("title" "PHP访问MySql数据库 初级篇");

然后创建带文本内容的link结点

$link =$dom createElement("link" "

也可以先生成link结点再为其添加文本内容

$link = $dom createElement("link");

$linktext =$dom createTextNode( );

$link appendChild($linktext);

然后将title和link结点加入到article结点中去

$rootelement appendChild($title);

$rootelement appendChild($link);

最后将article结点加入到DOMDocument对象中

$dom appendChild($rootelement);

这样一个完整的XML就生成完毕了 再整出整个XML

echo $dom saveXML() ;

saveXML()也可以只输入部分XML文本 如echo $dom saveXML($link);就只会输出link结点 link

下面再给出一个完整的PHP中数据内容输出到XML文件的例子 该例子会对将一个PHP数组输出到XML文件中

[php] ?php //将数组输出到XML文件中 // by MoreWindows( $article_array = array( "第一篇" = array( "title"="PHP访问MySql数据库 初级篇" "link"=" ) "第二篇" = array( "title"="PHP访问MySql数据库 中级篇 Smarty技术" "link"=" ) "第三篇" = array( "title"="PHP访问MySql数据库 高级篇 AJAX技术" "link"=" ) ); $dom = new DOMDocument( UTF ); $dom formatOutput = true; $rootelement = $dom createElement("MoreWindows"); foreach ($article_array as $key=$value) { $article = $dom createElement("article" $key); $title = $dom createElement("title" $value[ title ]); $link = $dom createElement("link" $value[ link ]); $article appendChild($title); $article appendChild($link); $rootelement appendChild($article);

} $dom appendChild($rootelement); $filename = "D:test xml"; echo XML文件大小 $dom save($filename) 字节 ; ? ?php //将数组输出到XML文件中 // by MoreWindows( $article_array = array( "第一篇" = array( "title"="PHP访问MySql数据库 初级篇" "link"=" ) "第二篇" = array( "title"="PHP访问MySql数据库 中级篇 Smarty技术" "link"=" ) "第三篇" = array( "title"="PHP访问MySql数据库 高级篇 AJAX技术" "link"=" ) ); $dom = new DOMDocument( UTF ); $dom formatOutput = true; $rootelement = $dom createElement("MoreWindows"); foreach ($article_array as $key=$value) { $article = $dom createElement("article" $key); $title = $dom createElement("title" $value[ title ]); $link = $dom createElement("link" $value[ link ]); $article appendChild($title); $article appendChild($link); $rootelement appendChild($article); } $dom appendChild($rootelement); $filename = "D:test xml"; echo XML文件大小 $dom save($filename) 字节 ; ? 运行该PHP会在D盘上生成test xml文件(Win + XAMPP + IE 测试通过)

二.读取XML文件 以读取前文中生成的D:test xml为例

[php] ?php //读取XML文件 // by MoreWindows( $filename = "D:test xml"; $article_array = array(); $dom = new DOMDocument( UTF ); $dom load($filename); //得到article结点 $articles = $dom getElementsByTagName("article"); echo article 结点个数 $articles length; foreach ($articles as $article) { $id = $article getElementsByTagName("id") item( ) nodeValue; $title = $article getElementsByTagName("title") item( ) nodeValue; $link = $article getElementsByTagName("link") item( ) nodeValue; $article_array[$id] = array( title =$title link =$link); } //输出结果 echo "pre"; var_dump($article_array); echo "/pre"; ? ?php //读取XML文件 // by MoreWindows( $filename = "D:test xml"; $article_array = array();

$dom = new DOMDocument( UTF ); $dom load($filename);

//得到article结点 $articles = $dom getElementsByTagName("article"); echo article 结点个数 $articles length; foreach ($articles as $article) { $id = $article getElementsByTagName("id") item( ) nodeValue; $title = $article getElementsByTagName("title") item( ) nodeValue; $link = $article getElementsByTagName("link") item( ) nodeValue; $article_array[$id] = array( title =$title link =$link); }

lishixinzhi/Article/program/PHP/201311/20909


当前名称:php数据库xml PHP数据库增删改查
URL分享:http://cdkjz.cn/article/hgpgjs.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

业务热线:400-028-6601 / 大客户专线   成都:13518219792   座机:028-86922220