PHP XML DOM

พิเศษก์ DOM ภายในทำให้การจัดการแบบของเอกสาร XML ใน PHP มีความเป็นไปได้

อะไรคือ DOM?

W3C DOM ให้สำหรับ HTML และ XML แบบของเอกสารมาตรฐาน และมาตรฐานสำหรับเข้าถึงและจัดการเอกสารเหล่านี้

W3C DOM ถูกแบ่งเป็นส่วนต่าง ๆ (Core, XML และ HTML) และระดับต่าง ๆ (DOM Level 1/2/3):

  • Core DOM - กำหนดชุดวัตถุมาตรฐานสำหรับแบบของเอกสารที่มีโครงสร้าง
  • XML DOM - กำหนดชุดวัตถุมาตรฐานสำหรับแบบของเอกสาร XML
  • HTML DOM - กำหนดชุดวัตถุมาตรฐานสำหรับแบบของเอกสาร HTML

หากคุณต้องการเรียนรู้เกี่ยวกับ XML DOM มากขึ้น โปรดเข้าเว็บไซต์ของเรา XML DOM คู่มือการเรียน

พิเศษก์ XML

เพื่ออ่านและปรับปรุง - สร้างและจัดการ - แบบของเอกสาร XML คุณต้องการพิเศษก์ XML

มีสองประเภทพิเศษก์ XML พื้นฐาน:

  • พิเศษก์ต้นไม้:พิเศษก์นี้แปลง XML แบบของเอกสารเป็นโครงสร้างต้นไม้ มันวิเคราะห์แบบของเอกสารทั้งหมด และให้ API ในการเข้าถึงองค์ประกอบในต้นไม้ ตัวอย่างเช่น โมเดลของแบบของเอกสาร (DOM)
  • พิเศษก์เหตุการณ์:มอง XML แบบของเอกสารในลักษณะของลำดับของเหตุการณ์ เมื่อเกิดเหตุการณ์เฉพาะบางอย่าง พิเศษก์จะเรียกฟังก์ชันเพื่อจัดการ

DOM พิเศษก์เป็นพิเศษก์ต้นไม้

โปรดดูส่วนตัวของแบบของ XML ต่อไปนี้:

<?xml version="1.0" encoding="ISO-8859-1"?>
<from>จอห์น</from>

XML DOM มอง XML ในลักษณะของโครงสร้างต้นไม้:

  • Level 1: แบบของ XML
  • Level 2: องค์ประกอบราก: <from>
  • Level 3: องค์ประกอบข้อความ: "จอห์น"

ติดตั้ง

ฟังก์ชัน DOM XML คือส่วนประกอบของคอร์น PHP คุณสามารถใช้ฟังก์ชันเหล่านี้โดยไม่ต้องติดตั้ง

ไฟล์ XML

จะใช้ XML ไฟล์ดังนี้ในตัวอย่างของเรา:

<?xml version="1.0" encoding="ISO-8859-1"?>
<note>
<to>จอร์จ</to>
<from>จอห์น</from>
<heading>คำเตือน</heading>
<body>ละเมิดการประชุม!</body>

โหลดและออกอากาศ XML

เราต้องการเริ่มต้น XML พิเศษก์ โหลด XML และออกอากาศมัน:

ตัวอย่าง

<?php
$xmlDoc = new DOMDocument();
$xmlDoc->load("note.xml");
print $xmlDoc->saveXML();
?>

การแสดงผลของรหัสบนสุดนี้

จอร์จ จอห์น คำเตือน ละเมิดการประชุม!

หากคุณตรวจสอบรหัสต้นฐานในหน้าต่างบราวเซอร์ของคุณ คุณจะเห็นข้อความดังนี้ HTML:

<?xml version="1.0" encoding="ISO-8859-1"?>
<note>
<to>จอร์จ</to>
<from>จอห์น</from>
<heading>คำเตือน</heading>
<body>ละเมิดการประชุม!</body>

上面的例子创建了一个 DOMDocument-Object,并把 "note.xml" 中的 XML 载入这个文档对象中。

ฟังก์ชัน saveXML() จะใส่เนื้อหา XML ทั้งหมดเข้าไปในตัวแปรของตัวมัน และเราจึงสามารถแสดงมันออกมาได้

วนรอบ XML

เราต้องการเริ่มต้น XML พาร์เซอร์ โหลด XML และวนรอบแอลล์เอลเมนต์ของ <note> ทั้งหมด

ตัวอย่าง

<?php
$xmlDoc = new DOMDocument();
$xmlDoc->load("note.xml");
$x = $xmlDoc->documentElement;
foreach ($x->childNodes AS $item)
  {
  print $item->nodeName . " = " . $item->nodeValue . "<br />";
  }
?>

การแสดงผลของรหัสบนสุดนี้

#text = 
to = George
#text = 
from = John
#text = 
heading = คำเตือน
#text = 
body = จงจำที่จะมีการประชุม!
#text =

ในตัวอย่างที่อยู่เหนือนี้ คุณเห็นว่ามีช่องว่างระหว่างแอลล์เอลเมนต์

เมื่อ XML ถูกสร้างขึ้น มันจะมีช่องว่างระหว่างโครงสร้างต่าง ๆ มากมาย และ XML DOM จะนำมันไปใช้เหมือนตัวเอง ถ้าคุณไม่จำเป็นต้องสนใจนั้น บางครั้งอาจก่อให้เกิดปัญหา

หากคุณต้องการเรียนรู้เกี่ยวกับ XML DOM มากขึ้น โปรดเข้าเว็บไซต์ของเรา XML DOM คู่มือการเรียน