欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php中使用DOM类读取XML文件的代码

程序员文章站 2022-06-12 15:50:46
...
  1. 2012
  2. 元旦
  3. 2012-1-1
  4. 2012-1-3
  5. 2011-12-31
  6. 春节
  7. 2012-1-22
  8. 2012-1-28
  9. 2012-1-21
  10. 2012-1-29
  11. 清明节
  12. 2012-4-2
  13. 2012-4-4
  14. 2012-3-31
  15. 2012-4-1
  16. 劳动节
  17. 2012-4-29
  18. 2012-5-1
  19. 2012-4-28
  20. 端午节
  21. 2012-6-22
  22. 2012-6-24
  23. 中秋节、国庆节
  24. 2012-9-30
  25. 2012-10-7
  26. 2012-9-26
复制代码

php代码如下:

  1. //读取xml文件
  2. $xmlDoc = new DOMDocument();
  3. $xmlDoc->load('http://127.0.0.1/holiday.xml');
  4. //获得该xml文件中的所有年份
  5. $years = $xmlDoc->getElementsByTagName("year");
  6. //对每一个年份进行处理
  7. foreach($years as $year){
  8. //获得具体的年份值
  9. $yearNames = $year->getElementsByTagName("yearName");
  10. $yearName = $yearNames->item(0)->nodeValue;
  11. echo $yearName.'年'.'';
  12. //获得该年份下所有的假日
  13. $holidays = $year->getElementsByTagName("holiday");
  14. //对每一个假日进行处理
  15. foreach($holidays as $holiday){
  16. //获得假日名称
  17. $holidayNames = $holiday->getElementsByTagName("holidayName");
  18. $holidayName = $holidayNames->item(0)->nodeValue;
  19. echo iconv('utf-8','gb2312', $holidayName).': '.'';
  20. //获得假日的具体放假日期
  21. $daysOffs = $holiday->getElementsByTagName("daysOff");
  22. $daysOff = $daysOffs->item(0);
  23. $froms = $daysOff->getElementsByTagName("from");
  24. $from = $froms->item(0)->nodeValue;
  25. $tos = $daysOff->getElementsByTagName("to");
  26. $to = $tos->item(0)->nodeValue;
  27. echo '假期为:'.$from.' 至 '.$to.'';
  28. //获得针对该假日的调休日期
  29. $overTimes = $holiday->getElementsByTagName("overTime");
  30. $overTime = $overTimes->item(0);
  31. $days = $overTime->getElementsByTagName("day");
  32. //通过判断,有调休日期则显示,没有则不显示
  33. if($days->length!=0){
  34. echo '调休日为:';
  35. foreach($days as $day){
  36. echo $day->nodeValue.' ';
  37. }
  38. echo '';
  39. }
  40. echo '';
  41. }
  42. }
  43. ?>
复制代码

输出显示:

php中使用DOM类读取XML文件的代码