首页 > 代码库 > PHP读写XML文件(一)
PHP读写XML文件(一)
PHP读写XML文件的方法有四种,从本文开始将连续使用四篇博文来分别介绍这四种方法。本文介绍的是第一种方法:
使用字符串操作的方式来对XML文件进行读写操作。
一、PHP字符串方式写XML文件:
首先介绍PHP使用字符串方式写XML文件。本例将读取数据库中的数据,输出为XML文件。
数据库数据如下:
读取数据并写入XML文件代码:
<?php /** * function:使用字符串方式写XML文件 * author:JetWu * date:2016.12.03 **/ $mysqli = mysqli_connect(‘localhost‘, ‘root‘, ‘123456‘, ‘wjt‘); if(mysqli_connect_errno()) die(‘database connect fail:‘ . mysqli_connect_error()); $sql = ‘select * from study order by starttime‘; $res = mysqli_query($mysqli, $sql); $study = array(); while($row = mysqli_fetch_array($res)) { $study[] = $row; } $str = "<studentcareer>\n"; foreach($study as $v) { $str .= "\t<period>\n"; $str .= "\t\t<starttime>" . $v[‘starttime‘] . "</starttime>\n"; $str .= "\t\t<endtime>" . $v[‘endtime‘] . "</endtime>\n"; $str .= "\t\t<school>" . $v[‘school‘] . "</school>\n"; $str .= "\t</period>\n"; } $str .= ‘</studentcareer>‘; $file = ‘./write_str.xml‘; file_put_contents($file, $str); echo ‘success!‘;
输出XML文件:
<studentcareer> <period> <starttime>2000</starttime> <endtime>2002</endtime> <school>培新小学</school> </period> <period> <starttime>2002</starttime> <endtime>2006</endtime> <school>览表东阳学校</school> </period> <period> <starttime>2006</starttime> <endtime>2009</endtime> <school>惠来慈云实验中学</school> </period> <period> <starttime>2009</starttime> <endtime>2012</endtime> <school>惠来一中</school> </period> <period> <starttime>2012</starttime> <endtime>2016</endtime> <school>华南师范大学</school> </period> </studentcareer>
二、PHP字符串方式读XML文件
接下来介绍使用字符串方式读取上一步生成的XML文件,并提取、组装数据。
代码:
<?php /** * function:使用字符串方式写XML文件 * author:JetWu * date:2016.12.03 **/ $file = ‘./write_str.xml‘; $con = file_get_contents($file); //XML标签配置 $xmlTag = array( ‘starttime‘, ‘endtime‘, ‘school‘ ); $arr = array(); foreach($xmlTag as $x) { preg_match_all("/<".$x.">.*<\/".$x.">/", $con, $temp); $arr[] = $temp[0]; } //去除XML标签并组装数据 $data = http://www.mamicode.com/array();>
读取打印后的数据格式:
读取组装后的数组中每个元素便是对应数据库中的每一条记录,可以很方便地将读取后的数据插入到数据库中。
PHP读写XML文件(一)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。