首頁 >後端開發 >php教程 >php中使用DOM類別讀取XML檔案的程式碼

php中使用DOM類別讀取XML檔案的程式碼

WBOY
WBOY原創
2016-07-25 08:51:53845瀏覽
  1. ;
  2. 2012年份名稱>
  3. 元旦
  4. 2012-1-1來自>
  5. 2012-1-3至>
  6. 2011-12-31日>
  7. 超時>
  8. 假期>
  9. 春節
  10. 2012-1-22來自>
  11. 2012-1-28至>
  12. 2012- 1-21/日>
  13. 2012-1-29日>
  14. 超時>
  15. 假期>
  16. 清明節
  17. 2012-4-2來自>
  18. 2012-4-4至>
  19. 2012-3-31/日>
  20. 2012-4-1日>
  21. 超時>
  22. 假期>
  23. 勞動節
  24. 2012-4-29來自>
  25. 2012-5- 1至>
  26. 2012-4-28日>
  27. 超時>
  28. 假期>
  29. 端午節
  30. 2012-6-22來自>
  31. 2012-6-24至>
  32. 假期>
  33. 中秋節、國慶日
  34. 2012-9-30來自>
  35. 2012-10-7至>
  36. 2012-9-26日>
  37. 超時>
  38. 假期>
  39. 年>
複製程式碼

php程式碼如下:

  1. //讀取xml檔
  2. $xmlDoc = new DOMDocument(); xmlxmlDoc- >load('http://127.0.0.1/holiday.xml');
  3. //取得該xml檔案中的所有年份
  4. $years = $xmlDoc->getElementsByTagName("year");
  5. //每一個年份處理
  6. foreach($years as $year){
  7. //取得特定的年份值
  8. $yearNames = $year->getElementsByTagName("yearName") ;
  9. $yearName = $yearNames->item(0)->nodeValue;
  10. echo $yearName.'年'.'';
  11. //取得該年份下所有的假期
  12. $ holidays = $year->getElementsByTagName("holiday");
  13. //處理每個假期
  14. foreach($holidays as $holiday){
  15. //取得假期名稱
  16. $holidayNames = $holiday->getElementsByTagName("holidayName");
  17. $holidayName = $holidayNames->item(0)->nodeValue;
  18. echo iconv('utf-8','gb2312', $holidayName).' : '.'';
  19. //獲得假期的具體放假日期
  20. $daysOffs = $holiday->getElementsByTagName("daysOff");
  21. $daysOff = $daysOffs->item( 0);
  22. $froms = $daysOff->getElementsByTagName("from");
  23. $from = $froms->item(0)->nodeValue;
  24. $tos = $daysOff->getElementsByTagName( "to");
  25. $to = $tos->item(0)->nodeValue;
  26. echo '假期為:'.$from.' 至'.$to.'';
  27. //取得針對該假期的調休日期
  28. $overTimes = $holiday->getElementsByTagName("overTime");
  29. $overTime = $overTimes->item(0);
  30. $days = $overTime->getElementsByTagName("day");
  31. //通過判斷,有調休日期則顯示,沒有則不顯示
  32. if($days->length!=0){
  33. echo '調休日為:';
  34. foreach($days as $day){
  35. echo $day->nodeValue.' ';
  36. }
  37. 回顯'';
  38. }
  39. 回顯'';
  40. }
  41. }
  42. ? >
複製程式碼

輸出顯示:



陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn