
高效提取HTML P标签数据并分组
本文介绍如何从HTML文档中提取标签内的文本内容,并按标签进行分组,最终生成一个PHP数组。我们将使用QueryList库来简化这个过程。
问题描述
给定一个包含多个标签的HTML文件,每个标签包含不同的文本内容,目标是提取这些文本内容并按标签顺序分组,例如:
array(
0 => "第四章 医学微生物学(助理不考)",
1 => "第一节 微生物的基本概念"
)
解决方案:使用QueryList库
QueryList是一个功能强大的PHP HTML解析库,能够高效地处理HTML数据提取任务。 以下步骤演示如何使用QueryList实现目标:
-
安装QueryList: 使用Composer安装QueryList:
composer require ql/querylist立即学习“前端免费学习笔记(深入)”;
-
加载HTML: 使用QueryList加载包含
标签的HTML内容。 -
提取数据: 使用QueryList的选择器语法提取所有
标签的文本内容。 -
生成分组数组: QueryList的
texts()方法直接返回一个包含所有标签文本内容的数组,无需额外分组步骤。
以下是一个完整的代码示例:
require 'vendor/autoload.php'; // Composer autoloader use ql\querylist; // 示例HTML内容 $html = '第四章 医学微生物学(助理不考)
第一节 微生物的基本概念
'; // 使用QueryList加载HTML $ql = querylist::html($html); // 提取所有标签的文本内容 $data = $ql->find('p')->texts()->all(); // 打印结果 print_r($data);
运行此代码将输出:
Array
(
[0] => 第四章 医学微生物学(助理不考)
[1] => 第一节 微生物的基本概念
)
通过QueryList,我们能够简洁地完成HTML数据提取和分组任务,避免了复杂的DOM操作。 这个方法高效且易于理解,适合处理各种HTML数据提取场景。











