محلل DOM المدمج في يجعل من الممكن لمعالجة وثائق XML في PHP.
وXML DOM محلل
محلل DOM هو محلل القائم على شجرة.
نظرة على جزء ثيقة XML التالية:
<?xml version="1.0" encoding="UTF-8"?>
<from>Jani</from>
وDOM يرى XML أعلاه، وهيكل شجرة:
- المستوى 1: وثيقة XML
- العنصر الجذر: مستوى 2 <from>
- المستوى 3: عنصر النص: "Jani"
التركيب
وظائف DOM محلل هي جزء من جوهر PHP. لا يوجد أي تركيب المطلوبة لاستخدام هذه الوظائف.
ملف XML
ملف XML أدناه سيتم استخدامها في مثالنا:
<?xml version="1.0" encoding="UTF-8"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
تحميل وإخراج XML
نريد تهيئة محلل XML، تحميل أكس، والناتج هو:
مثال
<?php
$xmlDoc = new DOMDocument();
$xmlDoc->load("note.xml");
print $xmlDoc->saveXML();
?>
الناتج من التعليمات البرمجية أعلاه سيكون:
Tove Jani Reminder Don't forget me this weekend!
إذا قمت بتحديد "View source" في نافذة المتصفح، وسوف ترى HTML التالية:
<?xml version="1.0" encoding="UTF-8"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
في المثال أعلاه يخلق DOMDocument-كائن ويقوم بتحميل XML من "note.xml" في ذلك.
ثم saveXML() يضع وظيفة وثيقة XML الداخلية إلى سلسلة، حتى نتمكن من إخراجه.
حلقات من خلال XML
نريد تهيئة محلل XML، تحميل XML، وحلقة من خلال جميع عناصر <note> العنصر:
مثال
<?php
$xmlDoc = new DOMDocument();
$xmlDoc->load("note.xml");
$x = $xmlDoc->documentElement;
foreach ($x->childNodes AS $item) {
print $item->nodeName . " = " . $item->nodeValue . "<br>";
}
?>
الناتج من التعليمات البرمجية أعلاه سيكون:
#text =
to = Tove
#text =
from = Jani
#text =
heading = Reminder
#text =
body = Don't forget me this weekend!
#text =
في المثال أعلاه ترى أن هناك نص العقد فارغة بين كل عنصر.
عندما يولد XML، فإنه غالبا ما تحتوي-المسافات بين العقد. محلل DOM XML يعامل هذه العناصر العادية، وإذا لم تكن على علم بها، إلا أنها تتسبب في بعض الأحيان مشاكل.
إذا كنت ترغب في معرفة المزيد عن XML DOM، يرجى زيارة موقعنا على XML تعليمي .