XML là một ngôn ngữ đánh dấu trông rất giống HTML. Một tài liệu XML là văn bản thuần túy và chứa các thẻ được phân cách bằng < và >. Có hai sự khác biệt lớn giữa XML và HTML -
- XML không xác định một bộ thẻ cụ thể mà bạn phải sử dụng
- XML cực kỳ cầu kỳ về cấu trúc tài liệu
XML cho bạn nhiều tự do hơn HTML. HTML có một bộ thẻ nhất định. các thẻ bao quanh một liên kết, các
bắt đầu đoạn văn, v.v. Tuy nhiên, một tài liệu XML có thể sử dụng bất kỳ thẻ nào bạn muốn. Gắn thẻ xung quanh xếp hạng phim, gắn thẻ xung quanh chiều cao của ai đó. Do đó, XML cung cấp cho bạn tùy chọn thiết lập các thẻ của riêng bạn
XML rất nghiêm ngặt khi nói đến cấu trúc tài liệu. HTML cho phép bạn chơi nhanh và thoải mái với một số thẻ mở và đóng. Nhưng đây không phải là trường hợp của XML
Danh sách HTML không phải là XML hợp lệ
- Braised Sea Cucumber
- Baked Giblets with Salt
- Abalone with Marrow and Duck Feet
Đây không phải là một tài liệu XML hợp lệ vì không có thẻ đóng nào phù hợp với ba thẻ mở
Danh sách HTML là XML hợp lệ
- Braised Sea Cucumber
- Baked Giblets with Salt
- Abalone with Marrow and Duck Feet
Phân tích một tài liệu XML
Mô-đun SimpleXML mới của PHP 5 giúp việc phân tích cú pháp một tài liệu XML trở nên đơn giản. Nó biến một tài liệu XML thành một đối tượng cung cấp quyền truy cập có cấu trúc vào XML
Để tạo một đối tượng SimpleXML từ một tài liệu XML được lưu trữ trong một chuỗi, hãy chuyển chuỗi đó tới simplexml_load_string[]. Nó trả về một đối tượng SimpleXML
Thí dụ
Hãy thử ví dụ sau -
Gopal K Verma Sairamkrishna Project submission Please see clearly XML; $xml=simplexml_load_string[$note]; print_r[$xml]; ?>
Nó sẽ tạo ra kết quả sau -
LƯU Ý - Bạn có thể sử dụng hàm simplexml_load_file[tên tệp] nếu bạn có nội dung XML trong một tệp
Để biết chi tiết đầy đủ về chức năng phân tích cú pháp XML, hãy kiểm tra Tham chiếu hàm PHP
Tạo một tài liệu XML
SimpleXML rất tốt cho việc phân tích cú pháp các tài liệu XML hiện có, nhưng bạn không thể sử dụng nó để tạo một tài liệu mới từ đầu
Cách dễ nhất để tạo một tài liệu XML là xây dựng một mảng PHP có cấu trúc phản ánh cấu trúc của tài liệu XML và sau đó lặp qua mảng, in từng phần tử với định dạng phù hợp
SimpleXML cung cấp một cách dễ dàng để lấy tên, thuộc tính và nội dung văn bản của phần tử nếu bạn biết cấu trúc hoặc bố cục của tài liệu XML
SimpleXML biến một tài liệu XML thành một cấu trúc dữ liệu mà bạn có thể lặp lại giống như một tập hợp các mảng và đối tượng
So với DOM hoặc trình phân tích cú pháp người nước ngoài, SimpleXML cần ít dòng mã hơn để đọc dữ liệu văn bản từ một phần tử
Cài đặt
Từ PHP 5, các hàm SimpleXML 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
PHP SimpleXML - Đọc từ chuỗi
Hàm PHP simplexml_load_string[]
được sử dụng để đọc dữ liệu XML từ một chuỗi
Giả sử chúng ta có một biến chứa dữ liệu XML, như thế này
$myXMLData =
"
tove
Jani
Lời nhắc nhở
Đừng quên tôi vào cuối tuần này
“;
Ví dụ dưới đây cho thấy cách sử dụng hàm simplexml_load_string[]
để đọc dữ liệu XML từ một chuỗi
Thí dụ
$myXMLData =
"
tove
Jani
Lời nhắc nhở
Đừng quên tôi vào cuối tuần này
“;
$xml=simplexml_load_string[$myXMLData] hoặc die["Lỗi. Không thể tạo đối tượng"];
print_r[$xml];
?>
Đầu ra của đoạn mã trên sẽ là
Đối tượng SimpleXMLElement [ [đến] => Tove [từ] => Jani [tiêu đề] => Lời nhắc [nội dung] => Cuối tuần này đừng quên tôi. ]
$xml = new DOMDocument["1.0"];9
"localhost"
6echo "".$xml->saveXML[]."";7
echo "".$xml->saveXML[]."";6