میخوای وارد بازار کار بشی و محصولات خودت رو بفرشی همین الان ثبت نام کن
0

simplexml چیست

SimpleXML یک روش جدید برای خواندن خصوصیات و متن یک عنصر در PHP5 فراهم می کند. (البته اگر طرح بندی سند XML را بدانید)

SimpleXML در مقایسه با تجزیه کننده DOM یا Expat با کد کمتری به اطلاعات عناصر دسترسی پیدا می کند.

SimpleXML یک سند XML را به یک شی تبدیل می کند:

  • عناصر: بوسیله شیء SimpleXMLElement به یک سری خصوصیات تنها تبدیل می شوند، زمانی که در یک سطح، بیش از یک عنصر وجود دارد، از آرایه ها استفاده می شود.
  • خصوصیات: خصوصیات عناصر در یک آرایه انجمنی(PHP Arrays) قابل دسترسی است، نام خصوصیت ایندکس آرایه است.
  • اطلاعات عنصر: متن اطلاعات عنصر به یک رشته تبدیل می شود، اگر یک عنصر بیش از یک متن داشت، آنها را به ترتیبی که پیدا کرده می چیند.

برای موارد پایه ای شبیه زیر، استفاده از SimpleXML بسیار ساده و سریع است:

  • خواندن یک فایل XML
  • استخراج اطلاعات از یک رشته XMLی
  • ویرایش متن یا مشخصه های یک عنصر

نکته: زمانی که با یک فایل XML پیشرفته شبیه namespaceها سروکار دارید بهتر است که از تجزه کننده های Expat یا DOM استفاده کنید.


نصب SimpleXML

توابع تجزیه کننده SimpleXML قسمتی از هسته PHP ۵٫۰ هستند و نیازی به نصب وجود ندارد.


چگونه از SimpleXML استفاه کنیم

لطفاً به فایل 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>

می خواهیم نام و متن اطلاعات هر عنصر را در خروجی چاپ کنیم.

راه حل؟

  1. فایل XML را لود کنید.
  2. نام اولین عنصر را بخوانید.
  3. یک حلقه روی هر نود(فرزند) ایجاد کنید و برای خواندن اطلاعات هر نود(فرزند) از تابع ()children استفاده کنید.
  4. برای هر نود(فرزند) نام عنصر و متن اطلاعات آنرا چاپ کنید.

مثال:

<?php
$xml = simplexml_load_file(“test.xml”);

echo $xml->getName() . “<br />”;

foreach($xml->children() as $child)
{
echo $child->getName() . “: ” . $child . “<br />”;
}
?>

خروجی کد بالا:

note
to: Tove
from: Jani
heading: Reminder
body: Don’t forget me this weekend!


 

امیدواریم آموزش ” simplexml چیست ” نیز برای شما مفید واقع شده باشد .برای مطالعه پست‌ها simplexml چیست، ما را در مدرسه کدنویسی تلگرام  و یا در تی جوان اینستاگرام دنبال کنید.

نظراتتون رو زیر همین پست با ما به اشتراک بگذارید.

ارسال دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

×

سلام کاربر عزیز

هر سوالی دارید در این بخش هستیم تا شما رو راهنمائی کنیم

روی لوگومون کلیک کنید

× چطور میتونم کمکتون کنم؟