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伪静态页面函数附使用方法
Jun 20 PHP
php自动跳转中英文页面
Jul 29 PHP
防止MySQL注入或HTML表单滥用的PHP程序
Jan 21 PHP
php文件上传表单摘自drupal的代码
Feb 15 PHP
深入php处理整数函数的详解
Jun 09 PHP
PHP中数据库单例模式的实现代码分享
Aug 21 PHP
在CentOS上搭建LAMP+vsftpd环境的简单指南
Aug 01 PHP
Thinkphp单字母函数使用指南
May 08 PHP
PHP微信开发之根据用户回复关键词\位置返回附近信息
Jun 24 PHP
Laravel 5.3 学习笔记之 配置
Aug 28 PHP
php cookie 详解使用实例
Nov 03 PHP
基于PHP+Mysql简单实现了图书购物车系统的实例详解
Aug 06 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面向对象全攻略 (六)__set() __get() __isset() __unset()的用法
2009/09/30 PHP
PHP下常用正则表达式整理
2010/10/26 PHP
PHP中使用gettext解决国际化问题的例子(i18n)
2014/06/13 PHP
WordPress中给媒体文件添加分类和标签的PHP功能实现
2015/12/31 PHP
php出租房数据管理及搜索页面
2017/05/23 PHP
使用PHP+MySql+Ajax+jQuery实现省市区三级联动功能示例
2017/09/15 PHP
PHP程序员学习使用Swoole的理由
2018/06/24 PHP
PHP实现用session来实现记录用户登陆信息
2018/10/15 PHP
JavaScript 特殊字符
2007/04/05 Javascript
JavaScript Event学习第五章 高级事件注册模型
2010/02/07 Javascript
js简单实现用户注册信息的校验代码
2013/11/15 Javascript
document.forms[].submit()使用介绍
2014/02/19 Javascript
jQuery实现的Div窗口震动特效
2014/06/09 Javascript
JavaScript调用传递变量参数的相关问题及解决办法
2015/11/01 Javascript
JQUERY表单暂存功能插件分享
2016/02/23 Javascript
JavaScript对象数组如何按指定属性和排序方向进行排序
2016/06/15 Javascript
js传值后台中文出现乱码的解决方法
2016/06/30 Javascript
javascript入门之window对象【新手必看】
2016/11/22 Javascript
JavaScript数组基于交换的排序示例【冒泡排序】
2018/07/21 Javascript
模块化react-router配置方法详解
2019/06/03 Javascript
微信小程序动态添加和删除组件的现实
2020/02/28 Javascript
ES6学习教程之Promise用法详解
2020/11/22 Javascript
[02:08]DOTA2英雄基础教程 马格纳斯
2014/01/17 DOTA
python3 发送任意文件邮件的实例
2018/01/23 Python
python 实现判断ip连通性的方法总结
2018/04/22 Python
Tensorflow Summary用法学习笔记
2020/01/10 Python
css3 旋转按钮 使用CSS3创建一个旋转可变色按钮
2012/12/31 HTML / CSS
css图标制作教程制作云图标
2014/01/19 HTML / CSS
Spartoo葡萄牙鞋类网站:线上销售鞋履与时尚配饰
2017/01/11 全球购物
德国著名廉价网上药店:Shop-Apotheke
2017/07/23 全球购物
微软巴西官方网站:Microsoft Brasil
2019/09/26 全球购物
波兰多品牌运动商店:StreetStyle24.pl
2020/09/22 全球购物
机关干部个人对照检查材料思想汇报
2014/09/28 职场文书
学生检讨书范文
2014/10/30 职场文书
党员争先创优承诺书
2015/01/20 职场文书
联村联户简报
2015/07/21 职场文书