Hàm PHP xml_set_notation_decl_handler()
Định nghĩa và cách sử dụng
Hàm xml_set_notation_decl_handler() quy định hàm được gọi khi bộ phân tích tìm thấy biểu thị trong tài liệu XML.
Nếu bộ xử lý được thành công, hàm này sẽ trả về true; ngược lại trả về false.
Chú thích:“Biểu thị”, tiếng Anh là notation declaration, cũng có một số tài liệu dịch là “biểu thị chú thích”.
Ngữ pháp
xml_set_notation_decl_handler(parser,handler)
Tham số | Mô tả |
---|---|
parser | Bắt buộc. Quy định bộ phân tích XML cần sử dụng. |
handler | Bắt buộc. Quy định hàm được gọi khi bộ phân tích tìm thấy biểu thị. |
Bởi handler Hàm được quy định bởi tham số phải có sáu tham số:
Tham số | Mô tả |
---|---|
parser | Bắt buộc. Quy định một biến chứa bộ phân tích XML gọi xử lý. |
name | Bắt buộc. Quy định biến chứa tên của thực thể. |
base |
Bắt buộc. Quy định một biến chứa cơ sở của标识符 của hệ thống được phân tích (system_id ). Hiện tại tham số này thường được đặt thành chuỗi rỗng. |
system_id | Bắt buộc. Quy định biến chứa标识符 của hệ thống của thực thể. |
public_id | Bắt buộc. Quy định biến chứa标识符 của thực thể. |
notation | Bắt buộc. Định nghĩa một biến chứa ký hiệu xác định loại dữ liệu của thực thể. |
Mô tả
handler Các tham số cũng có thể là một mảng chứa tham chiếu đối tượng và tên phương thức.
Mẫu
<?php $parser=xml_parser_create(); function char($parser,$data) { echo $data; } function not_decl_handler($parser,$not,$base,$sysID,$pubID) { echo "$not<br />"; echo "$sysID<br />"; echo "$pubID<BR />"; } xml_set_character_data_handler($parser,"char"); xml_set_notation_decl_handler($parser, "not_decl_handler"); $fp=fopen("test.xml","r"); while ($data=fread($fp,4096)) { xml_parse($parser,$data,feof($fp)) or die (sprintf("Lỗi XML: %s tại dòng %d", xml_error_string(xml_get_error_code($parser)), xml_get_current_line_number($parser))); } xml_parser_free($parser); ?>