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 03 PHP
关于初学PHP时的知识积累总结
Jun 07 PHP
smarty模板中拼接字符串的方法
Feb 14 PHP
php过滤所有恶意字符(批量过滤post,get敏感数据)
Mar 18 PHP
php检索或者复制远程文件的方法
Mar 13 PHP
PHP Hash算法:Times33算法代码实例
May 13 PHP
PHP对象、模式与实践之高级特性分析
Dec 08 PHP
PHP实现添加购物车功能
Mar 06 PHP
php数组实现根据某个键值将相同键值合并生成新二维数组的方法
Apr 26 PHP
PHP封装cURL工具类与应用示例
Jul 01 PHP
tp5框架基于Ajax实现列表无刷新排序功能示例
Feb 10 PHP
Thinkphp5+Redis实现商品秒杀代码实例讲解
Dec 29 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
世界第一个无线广播电台 KDKA
2021/03/01 无线电
上海牌131型七灯四波段四喇叭一级收音机
2021/03/02 无线电
PHP中session变量的销毁
2014/02/27 PHP
javascript字典探测用户名工具
2006/10/05 Javascript
GWT中复制到剪贴板 js+flash实现复制 兼容性比较好
2010/03/07 Javascript
使用Microsoft Ajax Minifier减小JavaScript文件大小的方法
2010/04/01 Javascript
js简单实现表单中点击按钮动态增加输入框数量的方法
2015/08/18 Javascript
浅谈JavaScript超时调用和间歇调用
2015/08/30 Javascript
jQuery手动点击实现图片轮播特效
2020/04/20 Javascript
JS中的数组方法笔记整理
2016/07/26 Javascript
jquery动态创建div与input的实例代码
2016/10/12 Javascript
JS如何设置iOS中微信浏览器的title
2016/11/22 Javascript
详解bootstrap的modal-remote两种加载方式【强化】
2017/01/27 Javascript
深入理解Javascript中的作用域链和闭包
2017/04/25 Javascript
vue.js学习笔记之v-bind和v-on解析
2018/05/03 Javascript
vue构建动态表单的方法示例
2018/09/22 Javascript
原生js实现公告滚动效果
2021/01/10 Javascript
小程序扫描普通链接二维码跳转小程序指定界面方法
2019/05/07 Javascript
小程序websocket心跳库(websocket-heartbeat-miniprogram)
2020/02/23 Javascript
Node.js设置定时任务之node-schedule模块的使用详解
2020/04/28 Javascript
解决vue使用vant下拉框van-dropdown-item 绑定title值不变问题
2020/08/05 Javascript
[02:12]2019完美世界全国高校联赛(春季赛)报名开启
2019/03/01 DOTA
Python爬虫实现的根据分类爬取豆瓣电影信息功能示例
2019/09/15 Python
Python二元赋值实用技巧解析
2019/10/25 Python
Python实现手绘图效果实例分享
2020/07/22 Python
Python爬取微信小程序Charles实现过程图解
2020/09/29 Python
python 模拟登陆github的示例
2020/12/04 Python
html5 application cache遇到的严重问题
2012/12/26 HTML / CSS
法国综合购物网站:RueDuCommerce
2016/09/12 全球购物
印度尼西亚最大和最全面的网络商城:Blibli.com
2017/10/04 全球购物
2014年个人业务工作总结
2014/11/17 职场文书
法律意见书范本
2015/06/04 职场文书
人与自然观后感
2015/06/16 职场文书
宾馆客房管理制度
2015/08/06 职场文书
教你如何使用Python实现二叉树结构及三种遍历
2021/06/18 Python
Windows Server 版本 20H2 于 8 月 9 日停止支持,Win10 版本 21H1 将于 12 月结束支
2022/07/23 数码科技