Phân tích cú pháp xml thành đối tượng php

Đưa ra một tài liệu XML và nhiệm vụ là chuyển đổi một tệp XML thành mảng PHP. Để chuyển đổi tài liệu XML thành mảng PHP, một số hàm PHP được sử dụng được liệt kê bên dưới

  • hàm file_get_contents[]. Hàm file_get_contents[] được sử dụng để đọc một tệp dưới dạng chuỗi. Chức năng này sử dụng các kỹ thuật ánh xạ bộ nhớ được máy chủ hỗ trợ và do đó nâng cao hiệu suất bằng cách biến nó thành một cách ưa thích để đọc nội dung của tệp
  • hàm Simplexml_load_string[]. Đôi khi cần phân tích cú pháp dữ liệu XML trong PHP. Có một số phương pháp có sẵn để phân tích cú pháp dữ liệu XML. SimpleXML là một trong số đó. Phân tích cú pháp tài liệu XML có nghĩa là điều hướng qua tài liệu XML và trả về các mẩu thông tin có liên quan. Ngày nay, một số API trả về dữ liệu ở định dạng JSON nhưng vẫn có một số lượng lớn các trang web trả về dữ liệu ở định dạng XML. Vì vậy, chúng tôi phải thành thạo trong việc phân tích cú pháp một tài liệu XML nếu chúng tôi muốn sử dụng các API có sẵn
  • hàm json_encode[]. Hàm json_encode[] được sử dụng để mã hóa chuỗi JSON và trả về giá trị biểu diễn JSON
  • hàm json_decode[]. Hàm json_decode[] dùng để giải mã một chuỗi JSON. Nó chuyển đổi một chuỗi được mã hóa JSON thành một biến PHP

Bước 1. Tạo tệp XML [Tùy chọn]. Tạo một tệp XML cần chuyển đổi thành mảng
GFG. xml




  

  

      

xml6_______9__________xml8xml9xml8>  

xml6_______9__________version4_______5_______5version4>  

    version9_______4_______1>  

      

xml6_______9__________xml8'1.0'2xml8>  

xml6_______9__________version4_______7_______8version4>  

    version9_______4_______1?>  4

      

    version9_______4_______1?>  4

version9firstnamedb?>  4

Bước 2. Chuyển đổi tệp thành chuỗi. Tệp XML sẽ nhập vào PHP bằng cách sử dụng hàm file_get_contents[] đọc toàn bộ tệp dưới dạng chuỗi và lưu vào một biến

Bước 3. Chuyển chuỗi thành đối tượng. Chuyển đổi chuỗi thành đối tượng có thể dễ dàng thực hiện thông qua một số hàm có sẵn simplexml_load_string[] của PHP

Bước 4. Chuyển đổi đối tượng thành JSON. Hàm json_encode[] được sử dụng để mã hóa chuỗi JSON và trả về giá trị biểu diễn JSON

Bước 5. Giải mã đối tượng JSON. Hàm json_decode[] giải mã chuỗi JSON. Nó chuyển đổi một chuỗi được mã hóa JSON thành một biến PHP

Đó là một tiêu chuẩn trung lập về ngôn ngữ và đa nền tảng 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 dưới dạng 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 XML DOM sau đó có thể được thao tác bằng JavaScript, Python và PHP, v.v.

The keyword CDATA which is the acronym for [Unparsed] Character Data is used to ignore special characters such as “” when parsing an XML document.

Tại sao lại 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. Tìm hiểu XML là gì và cách thức hoạt động của nó 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à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, giúp 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à mẫu tài liệu XML trông như thế nào




        

            Joe Paul

            CEO

        

        

            Tasha Smith

            Finance Manager

        

ĐÂY,

  • “” specifies the xml version to be used and encoding
  • “” is the root element.
  • “…” are the child elements of administration and sales respectively.

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. Mục lục. php

ĐÂY,

  • “$xml = simplexml_load_file['employees. xml'];” . xml và gán nội dung cho biến mảng $xml
  • “$list = $xml->record;”
  • “for [$i = 0; $i < count[…]…” là vòng lặp for đọc mảng số và xuất kết quả
  • “$list[$i]->attributes[]->man_no;”
  • “$list[$i]->tên;”
  • “$list[$i]->vị trí;”

Kiểm tra ứng dụng của chúng tôi

Giả sử bạn đã lưu chỉ mục tệp. php trong thư mục phptus/xml, duyệt đến URL http. //localhost/phptuts/xml/index. php

Cách tạo một tài liệu XML bằng PHP

Bây giờ chúng ta sẽ xem cách tạo một tài liệu XML bằng PHP

Chúng ta 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 lớp DOMDocument để tạo một tài liệu XML

ĐÂY,

  • “$dom = DOMDocument mới[];”
  • “$dom->encoding = ‘utf-8’;”
  • “$dom->xmlVersion = '1. 0’;” . 0
  • “$dom->formatOutput = true;”
  • “$root = $dom->createElement[‘Phim’];”
  • “$attr_movie_id = DOMAttr mới[‘movie_id’, ‘5467’];”
  • “$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ử e. g. Tiêu đề. ElementValue đặt giá trị nút con e. g. chiến dịch
  • “$root->appendChild[$movie_node];”
  • “$dom->appendChild[$root];”
  • “$dom->save[$xml_file_name];”
  • “echo ‘

Chủ Đề