ruskid / yii2-excel-exporter
Active Records 导出为 CSV 的辅助工具
dev-master
2015-10-27 14:41 UTC
Requires
This package is auto-updated.
Last update: 2024-08-27 09:16:23 UTC
README
此工具可以将 Active Records 导出为 Excel 文件
安装
安装此扩展的首选方法是使用 composer。
运行以下命令之一:
php composer.phar require --prefer-dist ruskid/yii2-excel-exporter "dev-master"
或者
"ruskid/yii2-excel-exporter": "dev-master"
将以下内容添加到您的 composer.json
文件的 require 部分:
用法
$exporter = new CSVExporter; //Add headers A1-A3 $exporter->setCellValue('A1', 'Subcategoria'); $exporter->setCellValue('A2', 'Propietario'); $exporter->setCellValue('A3', 'Escenario'); //Apply header styles for A1-A3 for ($i = 1; $i <= 3; $i++) { $exporter->setCellStyleFromArray('A' . $i, $exporter->headerStyle); } //Set values to B1-B3 $exporter->setCellValue('B1', $model->name); $exporter->setCellValue('B2', $model->propietario); $exporter->setCellValue('B3', $model->escenario); //Set server data. start from line A11. will return next free cell index $nextCellIndex = $exporter->setCellData('A11', $model->servers, [ [ 'header' => Yii::t('app', 'HOSTNAME'), 'value' => function($array) { return $array['HOSTNAME']; } ], [ 'header' => Yii::t('app', 'DESC_CATALOGO'), 'value' => function($array) { return $array['DESC_CATALOGO']; } ], ]); //set users from next cell free cell index $users = \app\models\User::find()->all(); $exporter->setCellData($nextCellIndex, $users, [ [ 'header' => Yii::t('app', 'Login'), 'value' => function($object) { return $object->username; } ], ]); $exporter->filename = 'test'; return $exporter->export();
- 您还可以添加 样式,请参阅 style 和 headerStyle 参数。