paxal / stats-table
多格式化器处理的统计数据表辅助工具
v2.0.6
2021-12-08 08:49 UTC
Requires
- php: ^7.2|^8.0
Requires (Dev)
- ext-json: *
- phpoffice/phpspreadsheet: ^1.9.0
- phpunit/phpunit: ^8.2
- twig/twig: ^1.0|^2.0|^3.0
Suggests
- phpoffice/phpspreadsheet: Allow to export to Excel file. req phpoffice/phpspreadsheet:^1.0
Conflicts
README
此包是 igraal/stats-table 的分支
stats-table
PHP 库,用于处理统计数据表和 CSV、JSON 和 Excel 导出。
摘要
此库可以帮助您根据一些数据创建统计表。您提供数据、标题以及您希望放在底部行的内容,然后可以将您的表导出到 JSON、CSV 或 Excel 文件中。
这对于在 HTML 前端操作大量您希望看到的表非常有用,并且当您希望添加将此数据导出到 CSV 或 Excel 文件的能力时。
安装
使用 composer
使用 composer,只需运行以下命令即可要求最新的稳定版本
composer req paxal/stats-table
用法
使用 StatsTable 类
StatsTable
类是用于存储数据的类。它需要一个强制参数和 4 个可选参数。创建新表的简单方法是将数据本身及其标题传递(即使标题是可选的)。
use IgraalOSL\StatsTable\StatsTable; $data = [ ['date' => '2014-01-01', 'hits' => 32500], ['date' => '2014-01-02', 'hits' => 48650], ]; $headers = ['date' => 'Date', 'hits' => 'Number of hits']; $statsTable = new StatsTable($data, $headers);
导出表
目前支持三种格式:Excel、CSV 和 JSON。因此,您可以使用相同的表进行 AJAX 调用或下载。
首先,创建您的导出器,然后导出您的数据。
use IgraalOSL\StatsTable\Dumper\Excel\ExcelDumper; $excelDumper = new ExcelDumper(); $excelContents = $excelDumper->dump($statsTable); header('Content-type: application/vnd.ms-excel'); echo $excelContents
使用统计数据表构建器
为了帮助您构建表,您可以使用 StatsTableBuilder
类。它可以帮助您组合多个表的数据,并可以创建自动计算列。它还可以帮助您构建聚合(即底部行),具有多种可能性:比率、总和、平均值或静态内容。
use IgraalOSL\StatsTable\StatsTableBuilder; $data = [ '2014-01-01' => ['hits' => 32500], '2014-01-02' => ['hits' => 48650], ]; $statsTableBuilder = new StatsTableBuilder( $data, ['hits' => 'Number of hits'] ); $statsTableBuilder->addIndexesAsColumn('date', 'Date'); $statsTable = $statsTableBuilder->build();