oncology-support / phpspreadsheet-helper-bundle
Symfony 扩展包
2.0.1
2024-06-22 22:46 UTC
Requires
- php: >=8.2
- phpoffice/phpspreadsheet: ^2.0
- symfony/config: ^6.0 || ^7.0
- symfony/dependency-injection: ^6.0 || ^7.0
- symfony/flex: ^2.4
- symfony/http-kernel: ^6.0 || ^7.0
- symfony/yaml: ^6.0 || ^7.0
README
PhpSpreadsheet Helper Bundle
通过添加辅助方法简化了在您的 Symfony 应用程序中使用优秀的 PHPOffice/PhpSpreadsheet 扩展包。
文档
版本 2 的新特性
WorksheetFactory 已重构为 WorksheetUtils,以便辅助方法在电子表格的第一个标签之外的表格中可用。请参见下面的示例。
许可证
PhpSpreadsheet Helper Bundle 在 MIT 许可证下发布。有关详细信息,请参阅捆绑的 LICENSE 文件。
安装
使用 Symfony Flex 的应用程序
打开命令行,进入您的项目目录,并执行
composer require oncology-support/phpspreadsheet-helper-bundle
不使用 Symfony Flex 的应用程序
步骤 1:下载扩展包
打开命令行,进入您的项目目录,并执行以下命令以下载此扩展包的最新稳定版本
composer require oncology-support/phpspreadsheet-helper-bundle
步骤 2:启用扩展包
然后,通过将其添加到项目 config/bundles.php
文件中注册的扩展包列表中来启用扩展包
// config/bundles.php return [ // ... OncologySupport\PhpSpreadsheetHelper\OncologySupportPhpSpreadsheetHelperBundle::class => ['all' => true], ];
步骤 3:使用它!
此扩展包提供从控制器中调用的辅助函数。
// your controller use OncologySupport\PhpSpreadsheetHelper\Utilities\SpreadsheetFactory; use OncologySupport\PhpSpreadsheetHelper\Utilities\WorksheetUtils; public function createAndDownloadSpreadsheet() { $spreadsheet = new SpreadsheetFactory(); $worksheet = new WorksheetUtils($spreadsheet->getActiveSheet(), 'First Tab'); $worksheet->addTitleRow('Very Important Data'); $header = ['Order Date', 'Site', 'Item', 'Item Description']; $rows = [ ['12/15/2023', 'Main site', 'Dog collar', 'A stunning red dog collar'], ['12/19/2023', 'Main site', 'Cat collar', 'Blue cat collar'], ['1/3/2024', 'Backup site', 'Turtle harness', 'Take your turtle for a walk!'], ]; $worksheet->addDataRows[$rows]; // add another tab on the spreadsheet $worksheet2 = new WorksheetUtils($spreadsheet->createSheet(), 'Second Tab'); $spreadsheet->setActiveSheetIndex(1); $worksheet2->addTitleRow('Even More Important Data'); $header = ['Order Date', 'Site', 'Item', 'Item Description']; $rows = [ ['2/12/2024', 'Main site', 'Donkey collar', 'Big enough for the most stubborn donk'], ['4/3/2024', 'Backup site', 'Duck harness', 'Take your duck for a walk!'], ]; $worksheet2->addDataRows[$rows]; // download to an excel file $spreadsheet->outputToWeb(); } Enjoy!