php通过正则表达式记取数据来读取xml的方法


Posted in PHP onMarch 09, 2015

本文实例讲述了php通过正则表达式记取数据来读取xml的方法。分享给大家供大家参考。具体分析如下:

xml源文件如下:

<?xml version="1.0 encoding="UTF-8"?>
<humans>
<zhangying>
<name>张映</name>
<sex>男</sex>
<old>28</old>
</zhangying>
<tank>
<name>tank</name>
<sex>男</sex>
<old>28</old>
</tank>
</humans>

php文件如下:

<?php
 $xml = "";
 $f = fopen('person.xml', 'r');
 while($data = fread($f,4096)){
  $xml .= $data;
 }
 fclose( $f );
// 上面读取数据
 preg_match_all("/\<humans\>(.*?)\<\/humans\>/s",$xml,$humans); 
//匹配最外层标签里面的内容
 foreach( $humans[1] as $k=>$human )
 {
  preg_match_all("/\<name\>(.*?)\<\/name\>/",$human,$name);
//匹配出名字
  preg_match_all("/\<sex\>(.*?)\<\/sex\>/",$human,$sex);
//匹配出性别
  preg_match_all("/\<old\>(.*?)\<\/old\>/",$human,$old);
//匹配出年龄
 }
foreach($name[1] as $key=>$val){
 echo $val." - ".$sex[$key][1]." - ".$old[$key][1]."<br>" ;
}
?>

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

PHP 相关文章推荐
php中理解print EOT分界符和echo EOT的用法区别小结
Feb 21 PHP
PHP垃圾回收机制简单说明
Jul 22 PHP
浅析PHP的静态成员函数效率更高的原因
Jun 13 PHP
PHP中单引号与双引号的区别分析
Aug 19 PHP
PHP遍历数组的三种方法及效率对比分析
Feb 12 PHP
PHP 实现代码复用的一个方法 traits新特性
Feb 22 PHP
Laravel 5 框架入门(四)完结篇
Apr 09 PHP
PHP快速排序quicksort实例详解
Sep 28 PHP
PHP连接MySQL进行增、删、改、查操作
Feb 19 PHP
PHP框架自动加载类文件原理详解
Jun 06 PHP
LNMP部署laravel以及xhprof安装使用教程
Sep 14 PHP
laravel利用中间件防止未登录用户直接访问后台的方法
Sep 30 PHP
PHP实现算式验证码和汉字验证码实例
Mar 09 #PHP
PHP实现指定字段的多维数组排序函数分享
Mar 09 #PHP
PHP多线程之内部多线程实例分析
Mar 09 #PHP
php中删除数组的第一个元素和最后一个元素的函数
Mar 07 #PHP
php建立Ftp连接的方法
Mar 07 #PHP
Thinkphp调用Image类生成缩略图的方法
Mar 07 #PHP
PHP实现懒加载的方法
Mar 07 #PHP
You might like
php数组的一些常见操作汇总
2011/07/17 PHP
php 调试利器debug_print_backtrace()
2012/07/23 PHP
用来解析.htgroup文件的PHP类
2012/09/05 PHP
php自动更新版权信息显示的方法
2015/06/19 PHP
php mongodb操作类 带几个简单的例子
2016/08/25 PHP
Thinkphp实现短信验证注册功能
2016/10/18 PHP
Python中使用django form表单验证的方法
2017/01/16 PHP
PHP+Ajax实现的无刷新分页功能详解【附demo源码下载】
2017/07/03 PHP
laravel + vue实现的数据统计绘图(今天、7天、30天数据)
2018/07/31 PHP
jQuery EasyUI 开源插件套装 完全替代ExtJS
2010/03/24 Javascript
jQuery下的动画处理总结
2013/10/10 Javascript
jquery+CSS实现的多级竖向展开树形TRee菜单效果
2015/08/24 Javascript
javascript实现平滑无缝滚动
2020/08/09 Javascript
原生js实现倒计时--2018
2017/02/21 Javascript
微信小程序 跳转传参数与传对象详解及实例代码
2017/03/14 Javascript
localstorage实现带过期时间的缓存功能
2019/06/28 Javascript
微信小程序 拍照或从相册选取图片上传代码实例
2019/08/28 Javascript
Vue实现Header渐隐渐现效果的实例代码
2020/11/05 Javascript
CentOS 8.2服务器上安装最新版Node.js的方法
2020/12/16 Javascript
pytorch + visdom 处理简单分类问题的示例
2018/06/04 Python
详解Python3的TFTP文件传输
2018/06/26 Python
Opencv+Python 色彩通道拆分及合并的示例
2018/12/08 Python
对python中的*args与**kwgs的含义与作用详解
2019/08/28 Python
Python根据服务获取端口号的方法
2019/09/25 Python
Python高级编程之继承问题详解(super与mro)
2019/11/19 Python
Django异步任务线程池实现原理
2019/12/17 Python
CSS3网格的三个新特性详解
2014/04/04 HTML / CSS
HTML5 form标签之解放表单验证、增加文件上传、集成拖放的使用方法
2013/04/24 HTML / CSS
厕所文明标语
2014/06/11 职场文书
委托书格式
2014/08/01 职场文书
关于感恩的演讲稿800字
2014/08/26 职场文书
优秀教师申报材料
2014/12/16 职场文书
教师听课评语大全
2014/12/31 职场文书
初三语文教学反思
2016/03/03 职场文书
使用python生成大量数据写入es数据库并查询操作(2)
2022/09/23 Python
华为HarmonyOS3.0强在哪? 看看鸿蒙3.0这7个小功能
2023/01/09 数码科技