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 编程请选择正确的文本编辑软件
Dec 21 PHP
PHP 实现多服务器共享 SESSION 数据
Aug 15 PHP
php foreach 使用&amp;(与运算符)引用赋值要注意的问题
Feb 16 PHP
php求两个目录的相对路径示例(php获取相对路径)
Mar 27 PHP
php异步多线程swoole用法实例
Nov 14 PHP
PHP实现表单提交时去除斜杠的方法
Dec 26 PHP
详解Yii实现分页的两种方法
Jan 14 PHP
用PHP的socket实现客户端到服务端的通信实例详解
Feb 04 PHP
yii2 url重写并隐藏index.php方法
Dec 10 PHP
PHP进阶学习之反射基本概念与用法分析
Jun 18 PHP
laravel 修改.htaccess文件 重定向public的解决方法
Oct 12 PHP
PHP实现文件上传与下载
Aug 28 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
造就帕卡马拉的帕卡斯是怎么被发现的
2021/03/03 咖啡文化
深入PHP5中的魔术方法详解
2013/06/17 PHP
CodeIgniter上传图片成功的全部过程分享
2013/08/12 PHP
PHP 二维数组根据某个字段排序的具体实现
2014/06/03 PHP
PHP过滤黑名单关键字的方法
2014/12/01 PHP
PHP实现通过文本文件统计页面访问量功能示例
2019/02/13 PHP
一个JS翻页效果
2007/07/23 Javascript
利用JQuery动画制作滑动菜单项效果实现步骤及代码
2013/02/07 Javascript
node.js中的path.basename方法使用说明
2014/12/09 Javascript
Bootstrap树形组件jqTree的简单封装
2016/01/25 Javascript
一分钟理解js闭包
2016/05/04 Javascript
vue.js通过自定义指令实现数据拉取更新的实现方法
2016/10/18 Javascript
JS键盘版计算器的制作方法
2016/12/03 Javascript
JavaScript基于Dom操作实现查找、修改HTML元素的内容及属性的方法
2017/01/20 Javascript
JavaScript实现翻页功能(附效果图)
2017/02/16 Javascript
3分钟快速搭建nodejs本地服务器方法运行测试html/js
2017/04/01 NodeJs
bootstrap警告框示例代码分享
2017/05/17 Javascript
基于vue2.x的电商图片放大镜插件的使用
2018/01/22 Javascript
基于Vue SEO的四种方案(小结)
2019/07/01 Javascript
Vue指令之 v-cloak、v-text、v-html实例详解
2019/08/08 Javascript
解决js中的setInterval清空定时器不管用问题
2020/11/17 Javascript
js实现弹窗猜数字游戏
2020/11/26 Javascript
Vue页面渲染中key的应用实例教程
2021/01/12 Vue.js
[59:35]DOTA2上海特级锦标赛主赛事日 - 3 败者组第三轮#1COL VS Alliance第二局
2016/03/04 DOTA
简单介绍Python中的try和finally和with方法
2015/05/05 Python
HTML5实现多张图片上传功能
2016/03/11 HTML / CSS
微软英国官方网站:Microsoft英国
2016/10/15 全球购物
英国家喻户晓的折扣商场:TK Maxx
2017/05/26 全球购物
新西兰网上购物,折扣店:BestDeals.co.nz
2019/03/20 全球购物
什么是Assembly(程序集)
2014/09/14 面试题
中文教师求职信
2014/02/22 职场文书
农村改厕实施方案
2014/03/22 职场文书
2014保险公司内勤工作总结
2014/12/16 职场文书
2016春节家属慰问信
2015/03/25 职场文书
SQL Server数据库查询出现阻塞之性能调优
2022/04/10 SQL Server
Apache自带的ab压力测试工具的实现
2022/07/23 Servers