php把xml当成数据库 php xml数据库

怎样将XML文件导入数据库

要用php 把XML数据导入mysql ,xml里所有的数据导入数据库

网站建设哪家好,找成都创新互联公司!专注于网页设计、网站建设、微信开发、微信小程序、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了道里免费建站欢迎大家使用!

我在php手册里找了个例子

to import xml into mysql

$file = "article_2_3032005467.xml";

$feed = array();

$key = "";

$info = "";

function startElement($xml_parser, $attrs ) {

global $feed;

}

function endElement($xml_parser, $name) {

global $feed, $info;

$key = $name;

$feed[$key] = $info;

$info = ""; }

function charData($xml_parser, $data ) {

global $info;

$info .= $data; }

$xml_parser = xml_parser_create();

xml_set_element_handler($xml_parser, "startElement", "endElement");

xml_set_character_data_handler($xml_parser, "charData" );

$fp = fopen($file, "r");

while ($data = fread($fp, 8192))

!xml_parse($xml_parser, $data, feof($fp));

xml_parser_free($xml_parser);

$sql= "INSERT INTO `article` ( `";

$j=0;

$i=count($feed);

foreach( $feed as $assoc_index = $value )

{

$j++;

$sql.= strtolower($assoc_index);

if($i$j) $sql.= "` , `";

if($i =$j) {$sql.= "` ) VALUES ('";}

}

$h=0;

foreach( $feed as $assoc_index = $value )

{

$h++;

$sql.= utf8_decode(trim(addslashes($value)));

if($i-1$h) $sql.= "', '";

if($i =$h) $sql.= "','')";

}

$sql=trim($sql);

echo $sql;

关于Mysql导出为xml文件后,怎么用PHP语言把此xml文件插入进数据库中

mysql导出的xml文件也是标准的xml文件,根节点是数据库名,重复节点是表名,表名节点里是字段名和值,用php自身带的解析xml类来解析xml文件,比如比较好用的simplexml类:

$xmlfile="test.xml";

//比如你的表名是user

$xml=simplexml_load_file($xmlfile);

foreach ($xml-user as $u)

{

$name= $u-name;

$sex= $u-sex;

$pwd= $u-pwd;

mysql_query("insert into user set name='$name',sex='$sex',pwd='$pwd'");

}

这样就把xml文件插入数据库表里了。

PHP如何处理XML并保存到MYSQL

meta http-equiv="Content-Type" content="text/html; charset=utf-8"

?php

//脚本永不结束

set_time_limit(0);

//数据库连接

mysql_connect('host', 'user', 'password');

mysql_select_db('database');

while(true){

//这里不知道你的xml来源,改为你自己的来源,读入xml变量

$xml = 'xmlrow expect="201412345" opencode="1,2,3,4,5" opentime="2014-11-11 11:11:11"//xml';

//解析xml内容

$obj = simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA);

$expect = $obj-row['expect'];

$opencode = $obj-row['opencode'];

$opentime = $obj-row['opentime'];

$sql='INSERT INTO table VALUES (\''.$expect.'\',\''.$opencode.'\',\''.$opentime.'\')';

mysql_query($sql);

//休息60秒

sleep(60);

}

由于php没有线程概念,这个页面要运行的话,必须维持一个在浏览器打开状态

这里的代码只是简单的示例,具体的逻辑你可以根据需求自己完善


名称栏目:php把xml当成数据库 php xml数据库
URL分享:http://myzitong.com/article/ddjcgig.html