Hướng dẫn domdocument to string php - domdocument thành chuỗi php

Xin chào, tôi đang sử dụng AJAX cho một trang web hiển thị các khóa học có sẵn, tôi đang gặp vấn đề khi tôi đọc XML (có chi tiết khóa học) nhận giá trị nút (tên khóa học) so với đầu vào của tôi (tên khóa học) nếu nó bằng nhau Tôi đang hiển thị văn bản (mô tả khóa học). Bây giờ tôi đang theo dõi nó để chính xác tên khóa học (trong tệp XML) nhưng trong khi so sánh nó với tên khóa học, nó hoàn toàn không so sánh SO. Một điểm tôi đã tải tệp XML và lặp lại nó:

$doc->load('data/ICT.xml'); 
echo"$doc";

Nó cho tôi một lỗi

Không thể chuyển đổi lỗi gây tử vong: Đối tượng của lớp domdocument không thể chuyển đổi thành chuỗi trong /home/students/....../www/htdocs/client/unit_details.php trên dòng 23

Vì vậy, những gì tôi hiểu từ đây là đối tượng DOM XML nên được chuyển đổi thành chuỗi để tôi có thể nhận được dữ liệu cần thiết và sử dụng nó, có đúng không? Nếu vậy một số người có thể cho tôi biết cách làm như vậy (như bất kỳ chức năng nào, v.v.) Cảm ơn trước :-)

Hỏi ngày 20 tháng 10 năm 2012 lúc 12:22Oct 20, 2012 at 12:22

Hướng dẫn domdocument to string php - domdocument thành chuỗi php

1

Đối tượng

echo $doc->saveXML();
0 không thể được sử dụng làm chuỗi.

Đây là cách bạn sẽ hiển thị đối tượng

echo $doc->saveXML();
0 dưới dạng chuỗi XML:

echo $doc->saveXML();

Đã trả lời ngày 20 tháng 10 năm 2012 lúc 12:23Oct 20, 2012 at 12:23

Hướng dẫn domdocument to string php - domdocument thành chuỗi php

echo $doc->saveXML();
0 có một phương pháp
echo $doc->saveXML();
3, nó được thiết kế để thực hiện chính xác những gì bạn cần.

Bạn có thể hiển thị toàn bộ tài liệu bằng cách:

$doc->saveHTML();

Hoặc chỉ là một số nút nhất định:

$doc->saveHTML( $bodyNode);

echo $doc->saveXML();
0 cũng cung cấp một vài tùy chọn cách nâng cao cách in XML, chẳng hạn như:

  • echo $doc->saveXML();
    
    5
  • echo $doc->saveXML();
    
    6
  • echo $doc->saveXML();
    
    7
  • ...

DARAEMAN

971 Huy hiệu vàng3 Huy hiệu bạc8 Huy hiệu đồng1 gold badge3 silver badges8 bronze badges

Đã trả lời ngày 20 tháng 10 năm 2012 lúc 12:25Oct 20, 2012 at 12:25

VyktorvyktorVyktor

20.2K5 Huy hiệu vàng60 Huy hiệu bạc95 Huy hiệu Đồng5 gold badges60 silver badges95 bronze badges

Thử cái này:

$xml = $doc->saveXML($doc->documentElement);

Đã trả lời ngày 20 tháng 10 năm 2012 lúc 12:34Oct 20, 2012 at 12:34

CodeAngryCodeAngryCodeAngry

12.4K3 Huy hiệu vàng48 Huy hiệu bạc56 Huy hiệu Đồng3 gold badges48 silver badges56 bronze badges

Bạn có thể sử dụng loại đúc

$doc->load('data/ICT.xml'); 
$doc2=(string)$doc;
echo $doc2;

Hoặc bạn có thể sử dụng chức năng PHP

strval();

Hàm này trả về các giá trị chuỗi của tham số được truyền cho nó.

Đã trả lời ngày 20 tháng 10 năm 2012 lúc 12:27Oct 20, 2012 at 12:27

Hướng dẫn domdocument to string php - domdocument thành chuỗi php

StaticvariablestaticvarableStaticVariable

5.2434 Huy hiệu vàng22 Huy hiệu bạc45 Huy hiệu Đồng4 gold badges22 silver badges45 bronze badges

1

  • Blog
  • Tin tức

21/05/2021 01:38

(PHP XML) 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 bài viết này, bạn sẽ tìm hiểu về DOM, XML và một số cú pháp và cách sử  dụng của PHP XML. 

Tìm hiểu về PHP XML

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. DOM xem các tài liệu XML như một cấu trúc cây (tree-structure).tree-structure).

Trình phân tích cú pháp PHP 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 bạn nên sử dụng PHP 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.

>>> Đọc thêm:Các loại toán tử trong PHP - Sơ lược về toán tử trong PHP Các loại toán tử trong PHP - Sơ lược về toán tử trong PHP

Ví dụ về tài liệu PHP 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.a





     

         Joe Paul

         CEO

     

     

         Tasha Smith

         Finance Manager

        

Trong đó:

  • “" Chỉ định phiên bản xml đượ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 thêm:Mảng trong PHP- Tìm hiểu về các loại mảng trong PHP Mảng trong PHP - Tìm hiểu về các loại mảng trong PHP

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.phpIndex.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 . '

'; } ?>

Trong đó,

  • “$ 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] -> name;” đọ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í

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 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 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";
?>

Trong đó:

  • “" Chỉ định phiên bản xml được sử dụng và mã hóa
  • “" là phần tử gốc.
  • “$ 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ụ: Title. 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 bạn

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.phphttp: //localhost/phptuts/xml/create_movies_list.php

Nhấp vào liên kết phim_list_xml

Kết luận: 

XML là từ viết tắt của Ngôn ngữ đánh dấu có thể mở rộng, 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 ứng dụng,... Trên đây là một số hướng dẫn về PHP XML, hy vọng các thông tin này hữu ích với bạn trong quá trình làm việc với PHP. Tìm hiểu thêm về PHP và các ngôn ngữ lập trình khác qua các khóa học lập trình tại Viện công nghệ thông tin T3H bạn nhé!.  khóa học lập trình tại Viện công nghệ thông tin T3H bạn nhé!