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 相关文章推荐
笑谈配置,使用Smarty技术
Jan 04 PHP
PHP 数据库树的遍历方法
Feb 06 PHP
PHP 身份证号验证函数
May 07 PHP
PHP最常用的ini函数分析 针对PHP.ini配置文件
Apr 22 PHP
PHP入门经历和学习过程分享
Apr 11 PHP
PHPThumb图片处理实例
May 03 PHP
php中使用PHPExcel读写excel(xls)文件的方法
Sep 15 PHP
redis查看连接数及php模拟并发创建redis连接的方法
Dec 15 PHP
利用PHP获取网站访客的所在地位置
Jan 18 PHP
PHP实现的DES加密解密封装类完整实例
Apr 29 PHP
实例说明js脚本语言和php脚本语言的区别
Apr 04 PHP
php获取是星期几的的一些常用姿势
Dec 15 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 header()函数使用说明
2008/07/10 PHP
PHP+Apache+Mysql环境搭建教程
2016/08/01 PHP
PHP获取访问页面HTTP状态码的实现代码
2016/11/03 PHP
解决thinkphp5未定义变量会抛出异常,页面错误,请稍后再试的问题
2019/10/16 PHP
Extjs学习笔记之七 布局
2010/01/08 Javascript
js+JQuery返回顶部功能如何实现
2012/12/03 Javascript
浏览器打开层自动缓慢展开收缩实例代码
2013/07/04 Javascript
js实现点击左右按钮轮播图片效果实例
2015/01/29 Javascript
jquery背景跟随鼠标滑动导航
2015/11/20 Javascript
JavaScipt中栈的实现方法
2016/02/17 Javascript
详解js的异步编程技术的方法
2017/02/09 Javascript
原生js仿淘宝网商品放大镜效果
2017/02/28 Javascript
js 判断一个数字是不是2的n次方幂的实例
2017/11/26 Javascript
JavaScript实现简单动态进度条效果
2018/04/06 Javascript
[50:28]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 Newbee vs KG
2018/04/01 DOTA
python获取外网ip地址的方法总结
2015/07/02 Python
Django与遗留的数据库整合的方法指南
2015/07/24 Python
Python实现网站注册验证码生成类
2017/06/08 Python
Python判断字符串是否为字母或者数字(浮点数)的多种方法
2018/08/03 Python
Python使用random.shuffle()打乱列表顺序的方法
2018/11/08 Python
Python列表删除元素del、pop()和remove()的区别小结
2019/09/11 Python
Docker如何部署Python项目的实现详解
2020/10/26 Python
HTML5的文档结构和新增标签完全解析
2017/04/21 HTML / CSS
新加坡航空官方网站:Singapore Airlines
2016/10/13 全球购物
文明家庭先进事迹材
2014/01/27 职场文书
大二法英学生职业生涯规划范文
2014/02/27 职场文书
法院干警四风问题个人对照检查材料思想汇报
2014/10/07 职场文书
2014年办公室工作总结范文
2014/11/12 职场文书
2014年度安全工作总结
2014/12/04 职场文书
关于颐和园的导游词
2015/01/30 职场文书
英语教师求职信范文
2015/03/20 职场文书
党员干部廉洁自律承诺书
2015/04/28 职场文书
餐厅开业活动方案
2019/07/08 职场文书
深入讲解Vue中父子组件通信与事件触发
2022/03/22 Vue.js
全新239军机修复记
2022/04/05 无线电
详解Flutter自定义应用程序内键盘的实现方法
2022/06/14 Java/Android