Trình phân tích cú pháp DOM XML PHP
Trình phân tích cú pháp DOM tích hợp sẵn giúp xử lý các tài liệu XML bằng PHP.
Trình phân tích cú pháp DOM XML
Trình phân tích cú pháp DOM là trình phân tích cú pháp dựa trên cây.
Nhìn vào phần tài liệu XML sau:
<?xml version="1.0" encoding="UTF-8"?>
<from>Jani</from>
DOM coi XML ở trên là một cấu trúc cây:
- Cấp độ 1: Tài liệu XML
- Mức 2: Phần tử gốc: <from>
- Cấp độ 3: Phần tử văn bản: "Jani"
Cài đặt
Các hàm phân tích cú pháp DOM là một phần của lõi PHP. Không cần cài đặt để sử dụng các chức năng này.
Tệp XML
Tệp XML bên dưới ("note.xml") sẽ được sử dụng trong ví dụ của chúng tôi:
<?xml version="1.0" encoding="UTF-8"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
Tải và xuất XML
Chúng tôi muốn khởi tạo trình phân tích cú pháp XML, tải xml và xuất nó:
<?php
$xmlDoc = new DOMDocument();
$xmlDoc->load("note.xml");
print $xmlDoc->saveXML();
?>
Đầu ra của đoạn mã trên sẽ là:
Tove Jani Reminder Don't forget me this weekend!
Nếu bạn chọn "Xem nguồn" trong cửa sổ trình duyệt, bạn sẽ thấy HTML sau:
<?xml version="1.0" encoding="UTF-8"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
Ví dụ trên tạo một DOMDocument-Object và tải XML từ "note.xml" vào đó.
Sau đó, hàm saveXML () đặt tài liệu XML bên trong thành một chuỗi để chúng ta có thể xuất ra.
Vòng qua XML
Chúng tôi muốn khởi tạo trình phân tích cú pháp XML, tải XML và lặp qua tất cả các phần tử của phần tử <note>:
<?php
$xmlDoc = new DOMDocument();
$xmlDoc->load("note.xml");
$x = $xmlDoc->documentElement;
foreach ($x->childNodes AS $item) {
print $item->nodeName . " = " . $item->nodeValue . "<br>";
}
?>
Đầu ra của đoạn mã trên sẽ là:
#text =
to = Tove
#text =
from = Jani
#text =
heading = Reminder
#text =
body = Don't forget me this weekend!
#text =
Trong ví dụ trên, bạn thấy rằng có các nút văn bản trống giữa mỗi phần tử.
Khi tạo XML, nó thường chứa các khoảng trắng giữa các nút. Trình phân tích cú pháp DOM XML coi những phần tử này như những phần tử bình thường và nếu bạn không biết về chúng, đôi khi chúng gây ra sự cố.
Nếu bạn muốn tìm hiểu thêm về XML DOM, vui lòng truy cập hướng dẫn XML của chúng tôi .