PHP基于SimpleXML生成和解析xml的方法示例

发布时间 - 2026-01-11 02:22:48    点击率:

本文实例讲述了PHP基于SimpleXML生成和解析xml的方法。分享给大家供大家参考,具体如下:

xml就不多解释了,php也提供了操作xml的方法,php操作xml可以有多种方式如domdocment,simplexml,xmlwriter等其中最简单的应该是simplexml了,这次就来说说simplexml怎么读取和解析xml文件或字符串

1. 生成xml字符串和文件

<?php
 header("Content-type: text/html; charset=utf-8");
 $xml=new SimpleXMLElement('<?xml version="1.0" encoding="utf-8"?><UsersInfo />');
 $item=$xml->addchild("item");
 $item->addchild("name","冯绍峰");
 $item->addchild("age","30");
 $item2=$xml->addchild("item");
 $item2->addchild("name","潘玮柏");
 $item2->addchild("age","29");
 $item2->addAttribute("id","02");
 header("Content-type: text/xml");
 echo $xml->asXml();
 $xml->asXml("student.xml");
?>

生成xml最重要的就是addchild,addAttribute,asXml三个方法,如果只是单纯生成xml文件的话那个header可以不要,下面是浏览器的显示结果

 

是不是很简单呢

2. simplexml解析xml文件或字符串

<?php
 header("Content-type: text/html; charset=utf-8");
 $xml=simplexml_load_file("UserInfo.xml");
 //通过children取得根节点下面的子项
 for($i=0;$i<count($xml->children());$i++){
   foreach ($xml->children()[$i] as $key => $value ) {
    echo "$key:$value"."<br/>";
   }
 }
?>

上面的方法适合解析xml文件,如果是xml字符串就把simplexml_load_file改为simplexml_load_string就可以了,children用于取得根节点或者子节点,取得的节点是一个数组直接遍历必要的时候加上过滤条件就可以了,下面是解析的结果

 

顺便把我的xml文件贴出来

<?xml version="1.0" encoding="UTF-8"?>
<UsersInfo>
 <item>
   <name>潘玮柏</name>
   <address>上海市浦东新区</address>
   <song>快乐崇拜</song>
 </item>
 <item>
   <name>蔡依林</name>
   <address>上海市徐汇区</address>
   <song>独占神话</song>
 </item>
</UsersInfo>

总的说来操作真的太简洁了。

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

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

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

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

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

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP针对XML文件操作技巧总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《PHP错误与异常处理方法总结》、《PHP基本语法入门教程》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。


# PHP  # SimpleXML  # 生成  # 解析  # xml  # php获取通过http协议post提交过来xml数据及解析xml  # php解析xml方法实例详解  # php解析xml 的四种简单方法(附实例)  # PHP用SAX解析XML的实现代码与问题分析  # php遍历解析xml字符串的方法  # php 解析xml 的四种方法详细介绍  # PHP使用xpath解析XML的方法详解  # PHP解析xml格式数据工具类示例  # PHP处理数组和XML之间的互相转换  # php实现将数组转换为XML的方法  # PHP简单实现解析xml为数组的方法  # 上海市  # 操作技巧  # 程序设计  # 就可以  # 徐汇区  # 浦东新区  # 是一个  # 相关内容  # 最重要  # 遍历  # 不多  # 感兴趣  # 就把  # 给大家  # 很简单  # 就来  # 最简单  # 更多关于  # 所述  # 贴出 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: C++用Dijkstra(迪杰斯特拉)算法求最短路径  JavaScript实现Fly Bird小游戏  专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?  高性价比服务器租赁——企业级配置与24小时运维服务  图册素材网站设计制作软件,图册的导出方式有几种?  Laravel Octane如何提升性能_使用Laravel Octane加速你的应用  Claude怎样写结构化提示词_Claude结构化提示词写法【教程】  如何用美橙互联一键搭建多站合一网站?  Laravel如何实现数据导出到PDF_Laravel使用snappy生成网页快照PDF【方案】  Laravel表单请求验证类怎么用_Laravel Form Request分离验证逻辑教程  非常酷的网站设计制作软件,酷培ai教育官方网站?  制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?  ChatGPT常用指令模板大全 新手快速上手的万能Prompt合集  如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?  东莞市网站制作公司有哪些,东莞找工作用什么网站好?  Laravel如何使用模型观察者?(Observer代码示例)  浏览器如何快速切换搜索引擎_在地址栏使用不同搜索引擎【搜索】  Laravel如何设置自定义的日志文件名_Laravel根据日期或用户ID生成动态日志【技巧】  Laravel如何使用Eloquent进行子查询  微信小程序 闭包写法详细介绍  猎豹浏览器开发者工具怎么打开 猎豹浏览器F12调试工具使用【前端必备】  如何在IIS中新建站点并配置端口与IP地址?  免费网站制作appp,免费制作app哪个平台好?  手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?  Zeus浏览器网页版官网入口 宙斯浏览器官网在线通道  如何快速搭建高效WAP手机网站?  如何生成腾讯云建站专用兑换码?  Laravel如何使用Vite进行前端资源打包?(配置示例)  Laravel如何使用Scope本地作用域_Laravel模型常用查询逻辑封装技巧【手册】  如何为不同团队 ID 动态生成多个独立按钮  如何选择可靠的免备案建站服务器?  nginx修改上传文件大小限制的方法  Laravel用户认证怎么做_Laravel Breeze脚手架快速实现登录注册功能  弹幕视频网站制作教程下载,弹幕视频网站是什么意思?  Laravel怎么生成URL_Laravel路由命名与URL生成函数详解  网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?  利用JavaScript实现拖拽改变元素大小  Laravel Seeder怎么填充数据_Laravel数据库填充器的使用方法与技巧  网站页面设计需要考虑到这些问题  Laravel怎么防止CSRF攻击_Laravel CSRF保护中间件原理与实践  惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?  Edge浏览器如何截图和滚动截图_微软Edge网页捕获功能使用教程【技巧】  Laravel Eloquent:优雅地将关联模型字段扁平化到主模型中  php485函数参数是什么意思_php485各参数详细说明【介绍】  Laravel 419 page expired怎么解决_Laravel CSRF令牌过期处理  微博html5版本怎么弄发语音微博_语音录制入口及时长限制操作【教程】  音乐网站服务器如何优化API响应速度?  laravel怎么为API路由添加签名中间件保护_laravel API路由签名中间件保护方法  如何快速上传建站程序避免常见错误?  公司网站制作需要多少钱,找人做公司网站需要多少钱?