XML là gì?
XML là từ viết tắt của Ngôn ngữ đánh dấu có thể mở rộng.
XML được sử dụng để cấu trúc, lưu trữ và vận chuyển dữ liệu từ hệ thống này sang hệ thống khác.
XML tương tự như HTML.
Nó sử dụng các thẻ mở và đóng.
Không giống như HTML, XML cho phép người dùng xác định các thẻ của riêng họ.
Trong hướng dẫn này, bạn sẽ học-
- DOM là gì?
- Trình phân tích cú pháp XML
- Tại sao sử dụng XML?
- Ví dụ về tài liệu XML
- Cách đọc XML bằng PHP
- Cách tạo tài liệu XML bằng PHP
DOM là gì?
DOM là từ viết tắt của Document Object Model.
Đó là một tiêu chuẩn trung lập về ngôn ngữ và nền tảng chéo xác định cách truy cập và thao tác dữ liệu trong;
- HTML
- XHTML
- XML
DOM XML được sử dụng để truy cập và thao tác các tài liệu XML. Nó xem tài liệu XML như một cấu trúc cây.
Trình phân tích cú pháp XML
Trình phân tích cú pháp XML là một chương trình dịch tài liệu XML thành Đối tượng Mô hình Đối tượng Tài liệu XML (DOM).
Đối tượng DOM XML sau đó có thể được thao tác bằng JavaScript, Python và PHP, v.v.
Từ khóa CDATA là từ viết tắt của (Unparsed) Dữ liệu ký tự được sử dụng để bỏ qua các ký tự đặc biệt như “<,>” khi phân tích cú pháp một tài liệu XML.
Tại sao sử dụng XML?
- Các dịch vụ web như SOAP và REST sử dụng định dạng XML để trao đổi thông tin. Học XML là gì và nó hoạt động như thế nào sẽ giúp bạn có lợi thế cạnh tranh với tư cách là nhà phát triển vì các ứng dụng hiện đại sử dụng nhiều dịch vụ web.
- Các tài liệu XML có thể được sử dụng để lưu trữ các cài đặt cấu hình của một ứng dụng
- Nó cho phép bạn tạo các thẻ tùy chỉnh của riêng mình để làm cho nó linh hoạt hơn.
Ví dụ về tài liệu XML
Giả sử rằng bạn đang phát triển một ứng dụng lấy dữ liệu từ một dịch vụ web ở định dạng XML.
Dưới đây là ví dụ về giao diện của tài liệu XML.
Joe Paul CEO Tasha Smith Finance Manager
ĐÂY,
- “ Xml version =" 1.0 "encoding =" utf-8 "?>" Chỉ định phiên bản xml sẽ được sử dụng và mã hóa
- “
" là phần tử gốc. - “
… ” lần lượt là các phần tử con của quản trị và bán hàng.
Cách đọc XML bằng PHP
Bây giờ chúng ta hãy viết mã sẽ đọc tài liệu XML của nhân viên và hiển thị kết quả trong trình duyệt web. Index.php
Employees Listing
';$list = $xml->record;for ($i = 0; $i < count($list); $i++) {echo 'Man no: ' . $list[$i]->attributes()->man_no . '
';echo 'Name: ' . $list[$i]->name . '
';echo 'Position: ' . $list[$i]->position . '
';}?>
ĐÂY,
- “$ Xml = simplexml_load_file ('nhân viên.xml');" sử dụng hàm simplexml_load_file để tải tên tệp worker.xml và gán nội dung cho biến mảng $ xml.
- “$ List = $ xml-> record;” lấy nội dung của nút bản ghi.
- “For ($ i = 0; $ i
- “$ List [$ i] -> thuộc tính () -> man_no;” đọc thuộc tính man_no của phần tử
- “$ List [$ i] -> tên;” đọc giá trị của phần tử con tên
- “$ List [$ i] -> vị trí;” đọc giá trị của phần tử con vị trí
Kiểm tra ứng dụng của chúng tôi
Giả sử bạn đã lưu tệp index.php trong thư mục phptus / xml, hãy duyệt đến URL http: //localhost/phptuts/xml/index.php
Cách tạo tài liệu XML bằng PHP
Bây giờ chúng ta sẽ xem xét cách tạo một tài liệu XML bằng PHP.
Chúng tôi sẽ sử dụng ví dụ trên trong sơ đồ cây DOM.
Đoạn mã sau sử dụng PHP được xây dựng trong DOMDocument lớp để tạo tài liệu XML.
encoding = 'utf-8';$dom->xmlVersion = '1.0';$dom->formatOutput = true;$xml_file_name = 'movies_list.xml';$root = $dom->createElement('Movies');$movie_node = $dom->createElement('movie');$attr_movie_id = new DOMAttr('movie_id', '5467');$movie_node->setAttributeNode($attr_movie_id);$child_node_title = $dom->createElement('Title', 'The Campaign');$movie_node->appendChild($child_node_title);$child_node_year = $dom->createElement('Year', 2012);$movie_node->appendChild($child_node_year);$child_node_genre = $dom->createElement('Genre', 'The Campaign');$movie_node->appendChild($child_node_genre);$child_node_ratings = $dom->createElement('Ratings', 6.2);$movie_node->appendChild($child_node_ratings);$root->appendChild($movie_node);$dom->appendChild($root);$dom->save($xml_file_name);echo "$xml_file_name has been successfully created";?>
ĐÂY,
- “$ Dom = new DOMDocument ();” tạo một thể hiện của lớp DOMDocument.
- “$ Dom-> encoding = 'utf-8';” đặt mã hóa tài liệu thành utf-8
- “$ Dom-> xmlVersion = '1.0';” chỉ định số phiên bản 1.0
- “$ Dom-> formatOutput = true;” đảm bảo rằng đầu ra được định dạng tốt
- “$ Root = $ dom-> createElement ('Phim');" tạo nút gốc có tên Phim
- “$ Attr_movie_id = new DOMAttr ('movie_id', '5467');" xác định thuộc tính id phim của nút Phim
- “$ Child_node_element_name = $ dom-> createElement ('ElementName', 'ElementValue')” tạo nút con của nút Phim. ElementName chỉ định tên của phần tử, ví dụ: Tiêu đề. ElementValue đặt giá trị nút con, ví dụ: Chiến dịch.
- “$ Root-> appendChild ($ movie_node);” nối các phần tử movie_node vào nút gốc Phim
- “$ Dom-> appendChild ($ root);” nối nút gốc vào tài liệu XML.
- “$ Dom-> save ($ xml_file_name);” lưu tệp XML trong thư mục gốc của máy chủ web.
- “Echo ''. $ xml_file_name. ' đã được tạo thành công'; ” tạo liên kết đến tệp XML.
Kiểm tra ứng dụng của chúng tôi
Giả sử bạn đã lưu tệp create_movies_list trong thư mục phptuts / xml, hãy duyệt đến URL http: //localhost/phptuts/xml/create_movies_list.php
Nhấp vào liên kết phim_list_xml
Tóm lược
- XML là từ viết tắt của Ngôn ngữ đánh dấu có thể mở rộng
- XML có thể được sử dụng để trao đổi thông tin giữa các hệ thống hoặc lưu trữ cài đặt cấu hình của một ứng dụng, v.v.
- DOM là từ viết tắt của Document Object Model. DOM XML xem tài liệu XML dưới dạng cấu trúc cây
- Trình phân tích cú pháp XML là một chương trình dịch XML một tài liệu XML thành một tài liệu có cấu trúc cây DOM.
- CDATA được sử dụng để bỏ qua các ký tự đặc biệt khi phân tích cú pháp các tài liệu XML.
- PHP sử dụng simplexml_load_file để đọc các tài liệu XML và trả về kết quả dưới dạng một mảng số
- Lớp DOMDocument của PHP để tạo tệp XML.