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中array_merge和array相加的区别分析
Jun 17 PHP
PHP error_log()将错误信息写入一个文件(定义和用法)
Oct 25 PHP
php cli换行示例
Apr 22 PHP
php的curl封装类用法实例
Nov 07 PHP
thinkphp四种url访问方式详解
Nov 28 PHP
详解PHP序列化反序列化的方法
Oct 27 PHP
PHP中常用的魔术方法
Apr 28 PHP
详解如何在云服务器上部署Laravel
Jun 30 PHP
PHP crypt()函数的用法讲解
Feb 15 PHP
在Laravel5中正确设置文件权限的方法
May 22 PHP
PHP实现一个按钮点击上传多个图片操作示例
Jan 23 PHP
PHP中类与对象功能、用法实例解读
Mar 27 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
支持php4、php5的mysql数据库操作类
2008/01/10 PHP
Ajax提交表单时验证码自动验证 php后端验证码检测
2016/07/20 PHP
php文件类型MIME对照表(比较全)
2016/10/07 PHP
PHP中in_array的隐式转换的解决方法
2018/03/06 PHP
用循环或if语句从json中取数据示例
2014/08/18 Javascript
js实现格式化金额,字符,时间的方法
2015/02/26 Javascript
jQuery实现切换字体大小的方法
2015/03/10 Javascript
Bootstrap每天必学之js插件
2015/11/30 Javascript
Javascript之Number对象介绍
2016/06/07 Javascript
详解有关easyUI的拖动操作中droppable,draggable用法例子
2017/06/03 Javascript
Angular使用Md5加密的解决方法
2017/09/16 Javascript
inner join 内联与left join 左联的实例代码
2017/09/18 Javascript
Vue-cli-webpack搭建斗鱼直播步骤详解
2017/11/17 Javascript
JS改变页面颜色源码分享
2018/02/24 Javascript
JavaScript中的&quot;=、==、===&quot;区别讲解
2019/01/22 Javascript
浅谈vuex中store的命名空间
2019/11/08 Javascript
js实现计算器功能
2020/08/10 Javascript
Python矩阵常见运算操作实例总结
2017/09/29 Python
python利用sklearn包编写决策树源代码
2017/12/21 Python
Django中使用Whoosh进行全文检索的方法
2019/03/31 Python
Django 多环境配置详解
2019/05/14 Python
python中property属性的介绍及其应用详解
2019/08/29 Python
在python3中使用shuffle函数要注意的地方
2020/02/28 Python
HTML5+CSS3实现拖放(Drag and Drop)示例
2014/07/07 HTML / CSS
美国皮靴公司自1863年:The Frye Company
2016/11/30 全球购物
Dogeared官网:在美国手工制作的珠宝
2019/08/24 全球购物
求职简历推荐信范文
2013/12/02 职场文书
毕业生工作求职信
2014/06/30 职场文书
幼儿园教师节演讲稿
2014/09/03 职场文书
2014最新版群众路线四风整改措施
2014/09/24 职场文书
导游词之淮安明祖陵
2019/11/25 职场文书
Vue如何实现组件间通信
2021/05/15 Vue.js
MySQL之PXC集群搭建的方法步骤
2021/05/25 MySQL
详解Vue router路由
2021/11/20 Vue.js
Java并发编程之原子性-Atomic的使用
2022/03/16 Java/Android
i7 6700处理器相当于i5几代
2022/04/19 数码科技