php操作XML、读取数据和写入数据的实现代码


Posted in PHP onAugust 15, 2014

xml文件

<?xml version="1.0" encoding="utf-8"?>
 
<vip>
 <id>23</id>
 <username>开心的路飞</username>
 <sex>男</sex>
 <face>face/43.jpg</face>
 <email>123@qq.com</email>
 <qq>1212121212</qq> 
</vip>

php解析XML获取标签中的值

/*
 * _get_xml 获取的XML文件
* @access public 表示函数对外公开
* @param $_xmlfile xml文件
* $_html 从XML中取出的数据数组
* */
function _get_xml($_xmlfile){
  $_html = array();
  if(file_exists($_xmlfile)){
    $_xml = file_get_contents($_xmlfile);
    preg_match_all('/<vip>(.*)<\/vip>/', $_xml,$_dom);    
    foreach($_dom[1] as $_value){
      preg_match_all('/<id>(.*)<\/id>/', $_value,$_id);
      preg_match_all('/<username>(.*)<\/username>/', $_value,$_username);
      preg_match_all('/<sex>(.*)<\/sex>/', $_value,$_sex);
      preg_match_all('/<face>(.*)<\/face>/', $_value,$_face);
      preg_match_all('/<email>(.*)<\/email>/', $_value,$_email);
      preg_match_all('/<qq>(.*)<\/qq>/', $_value,$_qq);
      $_html['id'] = $_id[1][0];
      $_html['username'] = $_username[1][0];
      $_html['sex'] = $_sex[1][0];
      $_html['face'] = $_face[1][0];
      $_html['email'] = $_email[1][0];
      $_html['qq'] = $_qq[1][0];
    }
  }else{
    _alert_back("文件不存在");
  }
  return $_html;
}

php向XML文件中写入数据

/*
 * _set_xml将信息写入XML文件
* @access public 表示函数对外公开
* @param $_xmlfile xml文件
* @param $_clean 要写入的信息的数组
* */
function _set_xml($_xmlfile,$_clean){
  $_fp = @fopen('newuser.xml','w');
  if(!$_fp){
    exit('系统错误,文件不存在!');
  }
  flock($_fp,LOCK_EX);
  $_string = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\t";
  fwrite($_fp, $_string,strlen($_string));
  $_string = "<vip>\r\t";
  fwrite($_fp, $_string,strlen($_string));
  $_string = "\t<id>{$_clean['id']}</id>\r\t";
  fwrite($_fp, $_string,strlen($_string));
  $_string = "\t<username>{$_clean['username']}</username>\r\t";
  fwrite($_fp, $_string,strlen($_string));
  $_string = "\t<sex>{$_clean['sex']}</sex>\r\t";
  fwrite($_fp, $_string,strlen($_string));
  $_string = "\t<face>{$_clean['face']}</face>\r\t";
  fwrite($_fp, $_string,strlen($_string));
  $_string = "\t<email>{$_clean['email']}</email>\r\t";
  fwrite($_fp, $_string,strlen($_string));
  $_string = "\t<qq>{$_clean['url']}</qq>\r\t";
  fwrite($_fp, $_string,strlen($_string));
  $_string = "</vip>";
  fwrite($_fp, $_string,strlen($_string));
  flock($_fp,LOCK_UN);
  fclose($_fp);
}
PHP 相关文章推荐
PHP初学入门
Nov 19 PHP
MySQL数据源表结构图示
Jun 05 PHP
php 魔术方法使用说明
Oct 20 PHP
PHP管理依赖(dependency)关系工具 Composer的自动加载(autoload)
Aug 18 PHP
PHP中返回引用类型的方法
Apr 03 PHP
YiiFramework入门知识点总结(图文教程)
Dec 28 PHP
使用php+swoole对client数据实时更新(一)
Jan 07 PHP
PHP-FPM实现性能优化
Mar 31 PHP
PHP+JQuery+Ajax实现分页方法详解
Aug 06 PHP
详解PHP中array_rand函数的使用方法
Sep 11 PHP
PHP使用文件锁解决高并发问题示例
Mar 29 PHP
php+Ajax无刷新验证用户名操作实例详解
Mar 04 PHP
php中操作memcached缓存进行增删改查数据的实现代码
Aug 15 #PHP
php上传图片之时间戳命名(保存路径)
Aug 15 #PHP
php中将一段数据存到一个txt文件中并显示其内容
Aug 15 #PHP
PHP反向代理类代码
Aug 15 #PHP
ThinkPHP中自定义目录结构的设置方法
Aug 15 #PHP
win7 64位系统 配置php最新版开发环境(php+Apache+mysql)
Aug 15 #PHP
php获取apk包信息的方法
Aug 15 #PHP
You might like
php 网上商城促销设计实例代码
2012/02/17 PHP
Laravel 5框架学习之向视图传送数据
2015/04/08 PHP
php array_slice 取出数组中的一段序列实例
2016/11/04 PHP
php利用云片网实现短信验证码功能的示例代码
2017/11/18 PHP
jquery全选/全不选/反选另一种实现方法(配合原生js)
2013/04/07 Javascript
网页防止tab键的使用快速解决方法
2013/11/07 Javascript
一个CSS+jQuery实现的放大缩小动画效果
2014/02/19 Javascript
jQuery简易时光轴实现方法示例
2017/03/13 Javascript
Javascript实现信息滚动效果
2017/05/18 Javascript
解决AjaxFileupload 上传时会出现连接重置的问题
2017/07/07 Javascript
JavaScript数组方法的错误使用例子
2018/09/13 Javascript
layui 富文本编辑器和textarea值的相互传递方法
2019/09/18 Javascript
vue中上传视频或图片或图片和文字一起到后端的解决方法
2019/12/01 Javascript
如何正确解决VuePress本地访问出现资源报错404的问题
2020/12/03 Vue.js
vue 导航守卫和axios拦截器有哪些区别
2020/12/19 Vue.js
Python实现数据库编程方法详解
2015/06/09 Python
Linux 发邮件磁盘空间监控(python)
2016/04/23 Python
Python内置函数—vars的具体使用方法
2017/12/04 Python
使用Python+wxpy 找出微信里把你删除的好友实例
2019/02/21 Python
Python面向对象原理与基础语法详解
2020/01/02 Python
使用tensorflow DataSet实现高效加载变长文本输入
2020/01/20 Python
django正续或者倒序查库实例
2020/05/19 Python
TensorFlow固化模型的实现操作
2020/05/26 Python
英国和爱尔兰的自炊式豪华度假小屋:Rural Retreats
2018/06/08 全球购物
影视制作岗位职责
2013/12/04 职场文书
学生出入校管理制度
2014/01/16 职场文书
求职信的七个关键技巧
2014/02/05 职场文书
管理工程专业求职信
2014/08/10 职场文书
2015年党员自我剖析材料
2014/12/17 职场文书
小学四年级学生评语
2014/12/26 职场文书
毕业设计论文评语
2014/12/31 职场文书
2015毕业生实习期工作总结
2015/04/09 职场文书
2015年幼儿园中班下学期工作总结
2015/05/22 职场文书
励志语录:时光飞逝,请学会珍惜所有的人和事
2020/01/16 职场文书
go goroutine 怎样进行错误处理
2021/07/16 Golang
使用Nginx搭载rtmp直播服务器的方法
2021/10/16 Servers