nicolastavella / phpreport
用于从PHP生成报告的库
dev-master
2017-10-23 15:01 UTC
Requires
- php: >=5.2.0
- ext-xmlwriter: 0.1
- phpoffice/phpexcel: 1.8.1
This package is not auto-updated.
Last update: 2024-09-29 03:16:16 UTC
README
PHPReport是一个用于从PHP构建和导出报告的类。它基于强大的PHPExcel库,并支持导出到流行的格式,如HTML、Excel或PDF。
特性
- 易于使用
- 多种方式自定义输入数据
- 根据预定义模板构建报告
- 导出到HTML、Excel(xlsx和xls)和PDF
安装
安装composer,并运行composer update来安装所需的PHPExcel依赖项
用法和示例
基本来说,有两种方法来构建报告。
从头开始构建
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以获取更多示例。