php实现解析xml并生成sql语句的方法php技巧

php实现解析xml并生成sql语句的方法php技巧

内容导读

收集整理的这篇技术教程文章主要介绍了php实现解析xml并生成sql语句的方法php技巧,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2447字,纯文字阅读大概需要4分钟

内容图文

这篇文章主要介绍了php实现解析xml并生成sql语句的方法,涉及php针对xml格式文件的读取、解析及sql字符串拼接相关操作技巧,需要的朋友可以参考下

本文实例讲述了php实现解析xml并生成sql语句的方法。分享给大家供大家参考,具体如下:

php解析xml有很多种办法,文档中有,搜索一下就一大把的。

今天遇到一个需求:将某个xml中的节点属性提取出来,然后更新数据库某一表中的字段。

思路:

解析XML,获取所有的节点属性 –> 循环节点集合,获取对应的属性 –> 拼接sql字符串存入一数组 –> 将数组转为字符串保存于某一文件中

这里使用了xpath,在写代码的过程中遇到两个问题:

1、xml的史路径属性为D:xx…时load不了文件,改为”/”(linux下的分隔符)就可以了

2、获取一个节点的属性,使用::attributes,编辑器就不停的红色提示,找到半天文档,最后用->getAttribute()就行了(猜的,因为太奇怪了,它支持->previousSibling和->nodeValue),按照,文档上的DOMElement::getAttribute直接就报错了..

下面是示例代码:

<title>xml 转换为 sql</title><meta http-equiv='content-type' content='text/html; charset=utf-8' /><style type="text/css">
.tip_info {margin-bottom:10px;}
.tip_info span {color:#f00;}</style><?php$xml = "D:/res/dressConfig.xml";$doc = new DOMDocument();$doc->load($xml);$xpath = new DOMXPath($doc);$query = "//i";$entries = $xpath->query($query);$len = $entries->length;echo "<p class='tip_info'>总共找到:<span>".$len."</span>个节点</p>";$arr = array();$idx = 0;while ($idx < $len) {
$nodeItem = $entries->item($idx);
$id = $nodeItem->getAttribute("i");
$name = $nodeItem->getAttribute("n");
$inf = $nodeItem->getAttribute("inf");//
echo "<p>".$id.'--'.$name.'--'.$inf."</p>";
$idx++;
array_push($arr, "update dress_item t SET t.s_name='".$name."',t.s_intro='".$inf."' WHERE t.n_doid=".$id.";");}$dir = "d:/sql/";if (!is_dir($dir)) {
mkdir($dir);}file_put_contents("d:/sql/dress_item.sql", implode("nr", $arr));echo "生成完毕!";?>

因为数据是从数据库表中生成出来的,所以找到的节点数即为表中的记录总数。生成后可以大概看一下内容是否正确,然后再执行该sql脚本便达到目的了。

PS:这里再为大家提供几款关于xml操作的在线工具供大家参考使用:

在线XML/JSON互相转换工具:
http://tools.jb51.net/code/xmljson

在线格式化XML/在线压缩XML
http://tools.jb51.net/code/xmlformat

XML在线压缩/格式化工具:
http://tools.jb51.net/code/xml_format_compress

XML代码在线格式化美化工具:
http://tools.jb51.net/code/xmlcodeformat

您可能感兴趣的文章:

PHP实现正则表达式分组捕获操作示例php技巧

PHP实现QQ登录的开原理和实现过程php实例

详解PHP文件的自动加载php实例

以上就是php实现解析xml并生成sql语句的方法php技巧的详细内容,更多请关注Gxl网其它相关文章!

内容总结

以上是为您收集整理的php实现解析xml并生成sql语句的方法php技巧全部内容,希望文章能够帮你解决php实现解析xml并生成sql语句的方法php技巧所遇到的程序开发问题。 如果觉得技术教程内容还不错,欢迎将网站推荐给程序员好友。

内容备注

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。


本文关键词:

联系我们

在线咨询:点击这里给我发消息

邮件:w420220301@qq.com