"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيفية استخراج النص من عناصر HTML مع فئات محددة في صفائف مسطحة باستخدام PHP DOM؟

كيفية استخراج النص من عناصر HTML مع فئات محددة في صفائف مسطحة باستخدام PHP DOM؟

نشر في 2025-02-06
تصفح:917

How to Extract Text from HTML Elements with Specific Classes into Flat Arrays using PHP DOM?

يوفر PHP DOM أدوات قوية لتحليل HTML والوصول إلى محتوياته. تتناول هذه المقالة شرطًا محددًا لاستخراج النص من عناصر ذات فئة مرشحة إلى صفائف مسطحة.

مشكلة

أسماء الفصول المتناوبة ، المهمة هي حفظ النص في صفيفتين: واحد للعناوين والآخر للمحتوى. على سبيل المثال ، بالنظر إلى html التالي:

الفصل 1

هذا هو الفصل 1

نحتاج إلى الحصول على الإخراج التالي:

$ heading = ['الفصل 1' ، 'الفصل 2' ، 'الفصل 3'] ؛ $ content = ['هذا هو الفصل 1' ، 'هذا هو الفصل 2' ، 'هذا هو الفصل 3'] ؛

Chapter 1

This is chapter 1

PHP DOM ، نحن نستخدم DomDocument و DOMXPATH. يتضمن الحل الخطوات التالية:

$heading = ['Chapter 1', 'Chapter 2', 'Chapter 3'];
$content = ['This is chapter 1', 'This is chapter 2', 'This is chapter 3'];

$ dom = new domdocument () ؛ $ dom-> loadhtml ($ test) ؛

قم بإنشاء كائن domxpath لأداء xPaths:

    &&&]
  1. استخدم parsetoarray () دالة لاستخراج النص من عناصر ذات فئة محددة:
$dom = new DOMDocument();
$dom->loadHTML($test);
    في الدالة parsetoarray ():
يقوم بإجراء استعلام xPath للفئة المخصصة.
$xpath = new DOMXPath($dom);
    يخزن النص المستخرج في صفيف ، يتم إرجاعه.
  1. Query ($ xPathquery) ؛ $ resultarray = [] ؛ foreach (عناصر $ كعنصر $) { العقد $ = $ element-> childnodes ؛ foreach (عقد $ كـ $ node) { $ resultarray [] = $ node-> nodevalue ؛ } } إرجاع $ resultarray ؛ } $ test = الفصل 1

    هذا هو الفصل 1

    الفصل 2

    هذا هو الفصل 2

    الفصل 3

    هذا هو الفصل 3

    HTML ؛ $ dom = new DomDocument () ؛ $ dom-> loadhtml ($ test) ؛ $ xPath = New DomxPath ($ dom) ؛ $ ending = parsetoarray ($ xpath ، 'heading1-h') ؛ $ content = parsetoArray ($ xPath ، 'Normal-H') ؛ var_dump ($ adling) ؛ صدى "
    " ؛ var_dump ($ content) ؛ صدى "
    " ؛
يستخدم هذا النهج قوة PHP DOM و XPATH لاستخراج النص بكفاءة من مستندات HTML ، مما يتيح معالجة محتوى أكثر تعقيدًا واستهدافًا.
            
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3