最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
php使用dom解析含有中文字符xml文档
时间:2022-06-24 23:48:55 编辑:袖梨 来源:一聚教程网
代码如下 | 复制代码 |
php //读取xml文件 $xmlDoc = new DOMDocument(); $xmlDoc->load('http://127.0.0.1/holiday.xml'); //获得该xml文件中的所有年份 $years = $xmlDoc->getElementsByTagName("year"); //对每一个年份进行处理 foreach($years as $year){ //获得具体的年份值 $yearNames = $year->getElementsByTagName("yearName"); $yearName = $yearNames->item(0)->nodeValue; echo $yearName.'年'.''; //获得该年份下所有的假日 $holidays = $year->getElementsByTagName("holiday"); //对每一个假日进行处理 foreach($holidays as $holiday){ //获得假日名称 $holidayNames = $holiday->getElementsByTagName("holidayName"); $holidayName = $holidayNames->item(0)->nodeValue; echo iconv('utf-8','gb2312', $holidayName).': '.''; //获得假日的具体放假日期 $daysOffs = $holiday->getElementsByTagName("daysOff"); $daysOff = $daysOffs->item(0); $froms = $daysOff->getElementsByTagName("from"); $from = $froms->item(0)->nodeValue; $tos = $daysOff->getElementsByTagName("to"); $to = $tos->item(0)->nodeValue; echo '假期为:'.$from.' 至 '.$to.''; //获得针对该假日的调休日期 $overTimes = $holiday->getElementsByTagName("overTime"); $overTime = $overTimes->item(0); $days = $overTime->getElementsByTagName("day"); //通过判断,有调休日期则显示,没有则不显示 if($days->length!=0){ echo '调休日为:'; foreach($days as $day){ echo $day->nodeValue.' '; } echo ''; } echo ''; } } ?> |
xml文件
代码如下 | 复制代码 |
|
设计知识点:
1、XML节点循环读取
2、用iconv()函数实现编码转换,防止中文乱码
相关文章
- 王者荣耀侦探能力大测试攻略 王者荣耀侦探能力大测试怎么过 11-22
- 无期迷途主线前瞻兑换码是什么 11-22
- 原神欧洛伦怎么培养 11-22
- 炉石传说网易云音乐联动怎么玩 11-22
- 永劫无间手游确幸转盘怎么样 11-22
- 无期迷途主线前瞻兑换码是什么 无期迷途主线前瞻直播兑换码介绍 11-22