bystro / html-table-converter
将HTML表格转换为其他格式
1.1.1
2023-10-28 15:54 UTC
Requires
- php: ^7.0|^8.0
Requires (Dev)
- phpunit/phpunit: ^6.0|^7.0|^8.0|^9.0
- squizlabs/php_codesniffer: 3.*
This package is auto-updated.
Last update: 2024-09-28 18:05:27 UTC
README
作者:Krzysztof Kubacki
日期:04-03-2019
关于
将HTML表格转换为其他格式
该项目处于ALPHA状态,这意味着它尚未完全功能化!
受项目https://github.com/tremblay/HTML-Table-to-JSON的启发
示例
假设我们有以下表格
当我们运行以下代码时
<?php $converter = HtmlTableConverter\HtmlTableConverterFactory::fromHtml($tableHtml); var_dump($converter->convert());
然后我们将得到以下结果
array(3) {
[0] =>
array(3) {
[0] =>
string(10) "First name"
[1] =>
string(9) "Last name"
[2] =>
string(6) "Points"
}
[1] =>
array(3) {
'First name' =>
string(4) "Jill"
'Last name' =>
string(5) "Smith"
'Points' =>
string(9) "<b>50</b>"
}
[2] =>
array(3) {
'First name' =>
string(3) "Eve"
'Last name' =>
string(7) "Jackson"
'Points' =>
string(9) "<b>94</b>"
}
}
从列值中删除HTML标签
<?php $converter = HtmlTableConverter\HtmlTableConverterFactory::fromHtml($tableHtml); $converter->stripTagsFromColumnValues(); var_dump($converter->convert());
array(3) { [0] => array(3) { [0] => string(10) "First name" [1] => string(9) "Last name" [2] => string(6) "Points" } [1] => array(3) { 'First name' => string(4) "Jill" 'Last name' => string(5) "Smith" 'Points' => - string(9) "<b>50</b>" + string(2) "50" } [2] => array(3) { 'First name' => string(3) "Eve" 'Last name' => string(7) "Jackson" 'Points' => - string(9) "<b>94</b>" + string(2) "94" } }
删除标题值
<?php $converter = HtmlTableConverter\HtmlTableConverterFactory::fromHtml($tableHtml); $converter->doNotIncludeHeaderRowInResult(); var_dump($converter->convert());
array(2) { - [0] => - array(3) { - [0] => - string(10) "First name" - [1] => - string(9) "Last name" - [2] => - string(6) "Points" - } [0] => array(3) { 'First name' => string(4) "Jill" 'Last name' => string(5) "Smith" 'Points' => string(9) "<b>50</b>" } [1] => array(3) { 'First name' => string(3) "Eve" 'Last name' => string(7) "Jackson" 'Points' => string(9) "<b>94</b>" } }
转换为JSON
<?php $converter = HtmlTableConverter\HtmlTableConverterFactory::fromHtml($tableHtml); $converter->convert(\HtmlTableConverter\Converter\Type::JSON);
支持的输出格式
- 数组
- JSON
安装
Composer
在命令行中
composer require bystro/html-table-converter
或 composer.json
"require": {
"bystro/html-table-converter": "^1.0"
}