Latest web development tutorials
×

PHP مسار

PHP مسار PHP مقدمة موجزة PHP تثبيت PHP قواعد PHP متغير PHP echo/print PHP أنواع البيانات PHP ثابت PHP سلسلة PHP مشغلي PHP If...Else PHP Switch PHP مجموعة PHP فرز مجموعة PHP Superglobals PHP While تداول PHP For تداول PHP وظيفة PHP المتغيرات السحرية PHP مساحات PHP الشيئية

PHP شكل

PHP شكل PHP مصادقة النماذج PHP شكل - الحقول المطلوبة PHP شكل - البريد الإلكتروني التحقق وURL PHP المثال شكل كامل PHP $_GET متغير PHP $_POST متغير

PHP دروس متقدمة

PHP المصفوفات متعددة الأبعاد PHP تاريخ PHP احتواء PHP ملف PHP تحميل ملف PHP Cookie PHP Session PHP E-mail PHP أمن E-mail PHP Error PHP Exception PHP فلتر PHP فلتر متقدم PHP JSON

PHP 7 الميزات الجديدة

PHP 7 الميزات الجديدة

PHP قاعدة بيانات

PHP MySQL مقدمة موجزة PHP MySQL صلة PHP MySQL إنشاء قاعدة بيانات PHP MySQL إنشاء جدول بيانات PHP MySQL إدراج بيانات PHP MySQL إدراج بيانات متعددة PHP MySQL القوائم المعدة PHP MySQL قراءة البيانات PHP MySQL WHERE PHP MySQL ORDER BY PHP MySQL UPDATE PHP MySQL DELETE PHP ODBC

PHP XML

XML Expat Parser XML DOM XML SimpleXML

PHP & AJAX

AJAX مقدمة موجزة AJAX PHP AJAX قاعدة بيانات AJAX XML AJAX البحث في الوقت الحقيقي AJAX RSS Reader AJAX تصويت

PHP الدليل المرجعي

PHP Array PHP Calendar PHP cURL PHP Date PHP Directory PHP Error PHP Filesystem PHP Filter PHP FTP PHP HTTP PHP Libxml PHP Mail PHP Math PHP Misc PHP MySQLi PHP PDO PHP SimpleXML PHP String PHP XML PHP Zip PHP Timezones PHP معالجة الصور PHP RESTful

محلل PHP XML الوافدة

المدمج في محلل PHP المغتربين يجعل من الممكن لمعالجة وثائق XML.


ما هو XML؟

يستخدم XML لوصف البيانات والتركيز على ما هي البيانات نعم. يصف ملف XML هيكل البيانات.

في XML، ليس هناك علامات محددة مسبقا. يجب تحديد العلامات الخاصة بك.

لمعرفة المزيد حول XML، يرجى زيارة موقعنا على XML البرنامج التعليمي .


ما الوافدة نعم؟

لقراءة وتحديث - إنشاء والعملية - وثيقة XML، تحتاج إلى محلل XML.

هناك نوعان أساسيان من موزعي XML:

  • محلل أساس شجرة: هذا محلل يحول وثيقة XML إلى بنية شجرة. ويحلل الوثيقة بأكملها، ويوفر الوصول إلى العناصر في شجرة، مثل طراز كائن المستند (DOM).
  • الحدث القائم محلل: وثيقة XML على شكل سلسلة من الأحداث. عند حدوث حدث معين، سوف محلل استدعاء الدالة لمعالجة.

محلل المغتربين هو محلل الحدث القائم.

التركيز محلل الحدث القائم على محتوى وثيقة XML، بدلا من هيكلها. وبسبب هذا، يمكن محلل الحدث القائم الوصول إلى البيانات بشكل أسرع من محلل القائم على شجرة.

النظر في جزء XML التالية:

<from>Jani</from>

تقارير محلل الحدث القائم على XML فوق على شكل سلسلة من ثلاثة أحداث:

  • بدء العنصر: من
  • بدء مقطع CDATA، القيمة: جاني
  • انهيار العنصر: من

XML سبيل المثال يحتوي على أعلى XML بشكل جيد. ولكن هذا المثال ليس XML صالح، لأنه لا يرتبط تعريف نوع المستند (DTD) معها.

ومع ذلك، عند استخدام محلل الوافدة، وهذا لا فرق. لم يتم تحديد محلل المغتربين للتأكد من صحتها، وتجاهل أي DTD.

باعتبارها غير التحقق من صحة-محلل XML القائمة على الحدث، الوافدة سريعة وخفيفة الوزن، ومناسبة جدا لتطبيقات الويب PHP.

ملاحظة: يجب أن يكون مستند XMLمنسق بشكل جيد، وإلا الوافدة سوف يولد خطأ.


تثبيت

وظائف محلل XML الوافدة هي جزء من جوهر PHP. لم يكن هناك التثبيت لاستخدام هذه الوظائف.


ملف XML

ملف XML أدناه سيتم استخدامها في مثالنا:

<?xml version="1.0" encoding="ISO-8859-1"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>


تهيئة محلل XML

نريد تهيئة محلل XML في PHP، وتحديد معالج للأحداث XML مختلفة، ومن ثم تحليل ملف XML.

أمثلة

<?php
//Initialize the XML parser
$parser=xml_parser_create();

//Function to use at the start of an element
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 to use at the end of an element
function stop($parser,$element_name)
{
echo "<br>";
}

//Function to use when finding character data
function char($parser,$data)
{
echo $data;
}

//Specify element handler
xml_set_element_handler($parser,"start","stop");

//Specify data handler
xml_set_character_data_handler($parser,"char");

//Open XML file
$fp=fopen("test.xml","r");

//Read data
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)));
}

//Free the XML parser
xml_parser_free($parser);
?>

رمز أعلاه الناتج الإرادة:

-- Note --
To: Tove
From: Jani
Heading: Reminder
Message: Don't forget me this weekend!

كيف يعمل:

  1. بواسطة xml_parser_create () وظيفة تهيئة محلل XML
  2. خلق مع وظيفة مختلفة معالج الأحداث
  3. إضافة xml_set_element_handler () وظيفة لتحديد والتي تعمل على أداء عندما يصادف محلل للعلامات البداية والنهاية
  4. إضافة xml_set_character_data_handler () وظيفة لتحديد والتي تعمل على أداء عندما يصادف محلل بيانات شخصية
  5. بواسطة xml_parse () لتحليل ملف "test.xml"
  6. في حالة وجود خطأ، ثم إضافة xml_error_string () وظيفة لتحويل وصف XML نص الخطأ
  7. استدعاء xml_parser_free () تعمل على إطلاق سراح المخصصة لxml_parser_create () وظيفة الذاكرة

مزيد من المعلومات PHP الوافدة محلل

لمزيد من المعلومات حول وظائف PHP الوافدة، زيارة موقعنا PHP XML دليل محلل المرجعي .