تحويل سلسلة XML جيدة التكوين إلى كائن SimpleXMLElement وإخراج مفاتيح الكائن وعناصره:
<?php$note=<<<XML<note><to>توفي</to><from>جاني</from><heading>تذكير</heading><body>لا تنساني في نهاية هذا الأسبوع!</ body></note>XML;$xml=simplexml_load_string($note);print_r($xml);?>تقوم الدالة simplexml_load_string() بتحويل سلسلة XML جيدة التكوين إلى كائن SimpleXMLElement.
simplexml_load_string( data,classname,options,ns,is_prefix );
المعلمة | يصف |
---|---|
بيانات | مطلوب. يحدد سلسلة XML جيدة التنسيق. |
اسم الفئة | خياري. يحدد فئة الكائن الجديد. |
خيارات | خياري. يحدد معلمات Libxml إضافية. يتم التعيين عن طريق تحديد الخيار كـ 1 أو 0 (TRUE أو FALSE، مثل LIBXML_NOBLANKS(1)). القيم المحتملة: LIBXML_COMPACT - ينشط التكوين الأمثل للعقد (يمكنه تسريع التطبيقات) LIBXML_DTDATTR - قم بتعيين سمات DTD الافتراضية LIBXML_DTDLOAD - تحميل مجموعات فرعية إضافية LIBXML_DTDVALID - التحقق من صلاحية DTD LIBXML_NOBLANKS - إزالة العقد الفارغة LIBXML_NOCDATA - قم بتعيين CDATA إلى عقدة نصية LIBXML_NOEMPTYTAG - قم بتوسيع العلامات الفارغة (على سبيل المثال، <br/> إلى <br></br>)، وهي صالحة فقط في وظائف DOMDocument->save() وDOMDocument->saveXML() LIBXML_NOENT - الكيان البديل LIBXML_NOERROR - عدم عرض تقارير الأخطاء LIBXML_NONET - توقف عن الوصول إلى الشبكة أثناء تحميل المستند LIBXML_NOWARNING - لا تعرض تقارير التحذير LIBXML_NOXMLDECL - تجاهل إعلانات XML عند تخزين مستند LIBXML_NSCLEAN - إزالة إعلانات مساحة الاسم الزائدة عن الحاجة LIBXML_PARSEHUGE - يقوم بتعيين علامة XML_PARSE_HUGE، التي تخفف أي قيود يفرضها المحلل اللغوي. سيؤثر هذا على أشياء مثل الحد الأقصى لعمق المستند وحدود حجم عقدة النص. LIBXML_XINCLUDE - استخدم XInclude بدلاً من ذلك LIBXML_ERR_ERROR - احصل على أخطاء قابلة للتصحيح LIBXML_ERR_FATAL - احصل على خطأ فادح LIBXML_ERR_NONE - لا تحصل على أخطاء LIBXML_ERR_WARNING - احصل على تحذيرات بسيطة LIBXML_VERSION - احصل على إصدار libxml (مثل 20605 أو 20617) LIBXML_DOTTED_VERSION - احصل على إصدار libxml المنقط (مثل 2.6.5 أو 2.6.17) |
نانوثانية | خياري. يحدد بادئة مساحة الاسم أو URI. |
is_prefix | خياري. يحدد قيمة منطقية. TRUE إذا كان ns عبارة عن بادئة، وFALSE إذا كان ns عبارة عن URI. الافتراضي هو FALSE. |
قيمة الإرجاع: | تقوم بإرجاع كائن SimpleXMLElement إذا نجح، أو FALSE إذا فشل. |
---|---|
نسخة PHP: | 5+ |
بيانات الإخراج لكل عنصر في سلسلة XML:
<?php$note=<<<XML<note><to>توفي</to><from>جاني</from><heading>تذكير</heading><body>لا تنساني في نهاية هذا الأسبوع!</ body></note>XML;$xml=simplexml_load_string($note);echo $xml->to "<br>";echo $xml->from "<br>";echo $xml->العنوان "<br>";echo $xml->body;?>قم بإخراج اسم العنصر والبيانات لكل عقدة فرعية في سلسلة XML:
<?php$note=<<<XML<note><to>توفي</to><from>جاني</from><heading>تذكير</heading><body>لا تنساني في نهاية هذا الأسبوع!</ body></note>XML;$xml=simplexml_load_string($note);echo $xml->getName() . "<br>";foreach($xml->children() as $child) { echo $child->getName() ": " $child "<br>" }?>