ikkez / f3-sheet
PHP Fat-Free Framework 的 Excel 和 CSV 工具
v0.4.3
2024-03-06 16:19 UTC
This package is auto-updated.
Last update: 2024-09-06 17:18:19 UTC
README
表单
PHP Fat-Free Framework 的 Excel 和 CSV 工具。
数据数组示例
$excel = \Sheet::instance(); // data array $rows = [ [ "name" => "rose", "color" => "red", "num" => 15 ], [ "name" => "daisy", "color" => "yellow", "num" => 25, ], [ "name" => "orchid", "color" => "purple", "num" => 7 ] ]; // header array to rename the field labels and sort/reorder the data array $headers = ['name'=>'Name', 'num'=>'Number', 'color'=>'Flower Color']; $excel->renderXLS($rows,$headers,"flowers.xls");
如果你的数据数组没有键,你可以使用 applyHeader
方法转换数组
$rows = [ [ "rose", "red", 15 ], [ "daisy", "yellow", 25, ], [ "orchid", "purple", 7 ] ]; $rows = \Sheet::instance()->applyHeader($rows,['name','color','num']);
Fat Free Mapper 对象示例
//Setup mapper
$items = new \DB\SQL\Mapper($db,'mytable');
//Load all items and map to associative array
$all = array_map(array($items,'cast'),$items->find());
$csv = \Sheet::instance();
$csv->renderCSV($all, $items->fields(), "items.csv");
注意
生成的 XLS 文件在较旧版本的 MS Office (Excel) 中可能会有问题,其中数字格式化的字段可能不会被识别为数字(显示为文本),包含换行符的文本字段也可能导致问题(文本丢失)。
然而,当使用 LibreOffice 或 OpenOffice 打开,或者使用 renderCSV
渲染为 csv,然后导入到 Excel 中时,这些问题不会出现。
许可证
您可以在 GNU 通用公共许可证版本 3 或更高版本的条款下使用此插件。
版权 (C) 2017 Christian Knuth [ikkez]