php怎么改变xml 节点值
时间:2021-09-08
来源:互联网
标签:
今天PHP爱好者给大家带来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 节点值的详细内容,更多请关注php爱好者其它相关文章!
-
如何注册谷歌账号(谷歌账号注册方法) 怎么跳过手机验证 时间:2025-09-29
-
access数据库8个经典实例 时间:2025-09-29
-
mmc.exe是什么进程 mmc.exe应用程序错误的原因及解决方法 时间:2025-09-29
-
4种基本的编程命名规范介绍(匈牙利命名法、驼峰式命名法、帕斯卡命名法、下划线命名法) 时间:2025-09-29
-
Ghostscript下载、安装教程 Ghostscript命令参数详解 时间:2025-09-29
-
Linux中内存管理NUMA架构详解 时间:2025-09-29
今日更新
-
时空中的绘旅人旅途足迹-五周年回顾活动10月3日上线
阅读:18
-
币安数字货币交易APP:安全便捷的主流虚拟币投资平台
阅读:18
-
算数梗是什么梗揭秘网络爆笑数学梗背后的神奇脑洞
阅读:18
-
三国志异闻录贾诩阵容怎么搭配-贾诩组合玩法推荐
阅读:18
-
恋与制作人月绘清欢活动开启-可获得中秋节主题R羁绊
阅读:18
-
零度曙光武器怎么选-零度曙光职业武器推荐榜
阅读:18
-
决胜巅峰全新展示英雄费登公布-10月2日将登场
阅读:18
-
三国志异闻录吕蒙强度如何-吕蒙技能加点分析
阅读:18
-
币安加密交易APP:安全合规的虚拟货币买卖平台
阅读:18
-
王者荣耀国庆假期活动福利公开-多重惊喜福利即将上线
阅读:18