اذهب إلى المحتوى
  • 0

كيف يمكن إنشاء مفسّر "XML" و تعريف أحداث ضمنه؟

عبد الرحيم

السؤال

Recommended Posts

  • 0

يمكنك إنشاء مفسّر "XML" بإستخدام التعليمة "xml_parser_create"  حيث يتم إنشاء وظائف لإستخدامها مع معالجات الأحداث فيمكنك إستخدام إضافة "xml_set_element_handler" لتحديد الوظائف التي ستظهر عندما يصل المفسّر لتنفيذ بداية و نهاية وسم محدّد و يمكنك إستخدام الإضافة "xml_set_character_data_handler" لتحديد الوظائف التي ستظهر عندما يكون المفسّر بحالة معالجة للبيانات.

فيما يلي شيفرة لإنشاء مفسّر للملف التجريبي "test.xml" و تنفيذ الوظيفة xml_parse عليه:

<?php
$parser=xml_parser_create();
function start($parser,$element_name,$element_attrs)
{
switch($element_name)
{
case "NOTE":
echo "-- Note --<br />";
break;
case "TO":
echo "To: ";
break;
case "FROM":
echo "From: ";
break;
case "HEADING":
echo "Heading: ";
break;
case "BODY":
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)) or
die (sprintf("XML Error: %s at line %d",
xml_error_string(xml_get_error_code($parser)),
xml_get_current_line_number($parser)));
}
xml_parser_free($parser);
?>

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...