تقوم الدالة xml_parse() بتوزيع مستندات XML.
في حالة نجاحها، ترجع الدالة TRUE. إذا فشلت، ترجع FALSE.
xml_parse(محلل،xml،نهاية)
المعلمة | يصف |
---|---|
محلل | مطلوب. يحدد محلل XML المراد استخدامه. |
xml | مطلوب. يحدد بيانات XML التي سيتم تحليلها. |
نهاية | خياري. إذا كانت هذه المعلمة TRUE، فإن البيانات الموجودة في المعلمة "xml" هي الجزء الأخير من البيانات في التحليل الحالي. ملاحظة: يتم الإبلاغ عن أخطاء الكيان في نهاية التحليل، وفقط عندما تكون معلمة "النهاية" TRUE. |
نصيحة: لإنشاء محلل XML، استخدم الدالة xml_parser_create().
ملف XML
<?xml version="1.0" encoding="ISO-8859-1"?><note><to>توفي</to><من>جاني</from><heading>تذكير</heading><body>دون 'لا تنساني في نهاية هذا الأسبوع!</body></note>
كود PHP
<?php$parser=xml_parser_create();function char($parser,$data) { echo $data; }xml_set_character_data_handler($parser,"char");$fp=fopen("test.xml"،"r") ؛ while ($data=fread($fp,4096)) { xml_parse($parser,$data,feof($fp)) أو die (sprintf("خطأ XML: %s في السطر %d"، xml_error_string(xml_get_error_code($parser)), xml_get_current_line_number($parser))); }xml_parser_free($parser);?>
يبدو إخراج الكود أعلاه كما يلي:
تذكير Tove Jani لا تنساني في نهاية هذا الأسبوع!
استخدام نفس ملف XML ولكن عرض بيانات XML بطرق مختلفة:
<?php$parser=xml_parser_create();function start($parser,$element_name,$element_attrs) { Switch($element_name) { case "NOTE": echo "-- Note --<br />"; "إلى": صدى "إلى:"؛ حالة "من": صدى "من:"؛ حالة "العنوان": صدى "العنوان:"؛ echo "Message: "; } }function stop($parser,$element_name) { echo "<br />" }function char($parser,$data) { echo $data }xml_set_element_handler($parser,"start" "stop");xml_set_character_data_handler($parser,"char");$fp=fopen("test.xml",r");while ($data=fread($fp,4096)) { xml_parse($parser,$data,feof($fp)) أو يموت (sprintf("خطأ XML: %s في السطر %d", xml_error_string(xml_get_error_code($parser) )))، xml_get_current_line_number($parser))); }xml_parser_free($parser);?>
يبدو إخراج الكود أعلاه كما يلي:
-- ملاحظة -- إلى: توفي من: جاني العنوان: رسالة تذكير: لا تنساني في نهاية هذا الأسبوع!