vulehd / phpreport
dev-master
2015-06-17 11:08 UTC
Requires
- php: >=5.3.3
- phpoffice/phpexcel: 1.8.*
This package is not auto-updated.
Last update: 2024-09-28 17:12:40 UTC
README
PHPReport 是一个用于从 PHP 中构建和导出报告的类。它基于强大的 PHPExcel 库,并包括导出到流行的格式,如 HTML、Excel 或 PDF。
特点
- 易于使用
- 多种方式自定义输入数据
- 基于预定义模板构建报告
- 导出到 HTML、Excel(xlsx 和 xls)和 PDF
安装
它基于 PHPExcel,因此请下载它并将其解压到 PHPReport.php 文件旁边。要开始使用它,只需在您的脚本中包含 PHPReport.php 并遵循文档即可。
用法和示例
基本上,有两种方式可以构建一个报告。
从头开始构建
PHPReport 做所有的工作,您只需提供数据即可,如下所示
$R=new PHPReport();
$R->load(array(
'id'=>'product',
'data'=>array(
array('Some product',23.99),
array('Other product',5.25),
array('Third product',0.20)
)
)
);
$R->render();
这对于导出表格数据非常棒。输入数据可以进一步格式化、分组和自定义。请参阅 wiki。
从模板构建
模板通常是某些已经格式化并包含数据占位符的 Excel 文件。占位符有两种类型:静态和动态。静态占位符例如日期、城市或客户名称等数据。动态占位符例如产品列表,具有可变行数。
$R=new PHPReport(array('template'=>'invoice_template.xls'));
$R->load(array(
array(
'id'=>'invoice',
'data'=>array(
'date'=>date('Y-m-d'),
'number'=>'000312',
'customer_id'=>'512',
'expiration_date'=>date('Y-m-d',strtotime('+30day')),
'name'=>'John Doe',
'company'=>'Example, inc',
'address'=>'Some address',
'city'=>'Gotham City',
'zip'=>'0123',
'phone'=>'+123456'
),
'format'=>array(
'date'=>array('datetime'=>'d/m/Y'),
'expiration_date'=>array('datetime'=>'d/m/Y')
)
),
array(
'id'=>'product',
'data'=>array(
array('description'=>'Some product','price'=>23.99,'total'=>23.99),
array('description'=>'Other product','price'=>5.25,'total'=>2.25)
),
'repeat'=>true,
'format'=>array(
'price'=>array('number'=>array('prefix'=>'$','decimals'=>2)),
'total'=>array('number'=>array('prefix'=>'$','decimals'=>2))
)
)
)
);
$R->render();
这些报告非常适合复杂的导出,如发票。请参阅 wiki 以获取更多示例。