温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

php如何改变xml节点值

发布时间:2021-09-02 09:39:32 来源:亿速云 阅读:437 作者:chen 栏目:编程语言

本篇内容主要讲解“php如何改变xml节点值”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php如何改变xml节点值”吧!

php改变xml节点值的方法:1、从数据库读取数据;2、写一个xml文件;3、创建DOMDocument的对象并载入xml文件;4、修改指定节点下子节点的值即可。

本文操作环境:Windows7系统、PHP7.1版本、Dell G3电脑

php怎么改变xml 节点值?

php修改xml节点的值

今天刚刚实现的功能,找了很多资料,本来想用xpath,但是由于对xpath不甚了解。绕了个大圈后还是决定用DOMDocument来做。

在此做一个标记,以后找资料的时候也不用太辛苦。

先从数据库读取数据,然后写一个xml文件。xml文件格式如下。

mainchart.xml

<?xml version="1.0" encoding="utf-8"?> <records> <record> <pono>5008171</pono> <status>3</status> <opentime>2010.06.13 14:19</opentime> <closetime>2010.06.16 14:19</closetime> <potype>balance</potype> <variety/> <margin/> <openprice/> <closeprice/> <zhisun/> <zhiying/> <lowest/> <highest/> <netvalue/> <openamount/> <openinterest/> <amount/> <point/> <positiontime>3</positiontime> <memo>TRMM-DP(123005)-D</memo> </record> <record> <pono>5011083</pono> <status>3</status> <opentime>2010.06.15 16:15</opentime> <closetime>2010.06.15 16:23</closetime> <potype>buy</potype> <variety>eurusd</variety> <margin/> <openprice>1.31822</openprice> <closeprice>1.31655</closeprice> <zhisun>0</zhisun> <zhiying>0</zhiying> <lowest/> <highest/> <netvalue/> <openamount/> <openinterest/> <amount/> <point/> <positiontime>00:08:00</positiontime> <memo>aaafff</memo> </record> <record> <pono>5011913</pono> <status>3</status> <opentime>2010.06.15 16:51</opentime> <closetime>2010.06.15 17:19</closetime> <potype>sell</potype> <variety>eurusd</variety> <margin/> <openprice>1.31819</openprice> <closeprice>1.31809</closeprice> <zhisun>0</zhisun> <zhiying>0</zhiying> <lowest/> <highest/> <netvalue/> <openamount/> <openinterest/> <amount/> <point/> <positiontime>00:28:00</positiontime> <memo>eee</memo> </record> </records>

php文件里的处理。

$file ="mainchart.xml";     //创建DOMDocument的对象     $dom=new DOMDocument('1.0');     //载入mainchart.xml文件     $dom->load($file);     //获得record节点的集合     $records = $dom->getElementsByTagName('record');     //遍历record节点的集合     foreach($records as $record){         //如果record节点的pono子节点的值满足条件,就修改该record节点下memo子节点的值         if($record->getElementsByTagName('pono')->item(0)->nodeValue == $_GET['id']){             $record->getElementsByTagName('memo')->item(0)->nodeValue = $_GET['content'];         }     } $dom->save('mainchart.xml');

$_GET['id']和$_GET['content']是ajax传过来的参数。


到此,相信大家对“php如何改变xml节点值”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

php
AI