kreyu/sonata-exporter-phpspreadsheet-bridge

将 PhpSpreadsheet 集成到 Sonata Exporter 包中。

dev-main 2021-01-24 11:49 UTC

This package is auto-updated.

Last update: 2024-08-24 20:03:40 UTC


README

此包将 PhpSpreadsheetSonata Exporter 集成。

$ composer require kreyu/sonata-exporter-phpspreadsheet-bridge

支持的写入格式

  • xls
  • xlsx
  • ods

注意:默认的 Sonata Exporter 的 .xls 写入器 生成带有 HTML 的电子表格,这会触发有关 "可能损坏的文件" 的警告。使用此包中的 xls 写入器来解决这个问题。

用法

<?php

use Sonata\Exporter\Handler;
use Sonata\Exporter\Source\PDOStatementSourceIterator;
use Kreyu\SonataExporterPhpSpreadsheetBridge\Writer\XlsWriter;

// Prepare the data source
$dbh = new \PDO('sqlite:foo.db');
$stm = $dbh->prepare('SELECT id, username, email FROM user');
$stm->execute();

$source = new PDOStatementSourceIterator($stm);

// Prepare the writer
$writer = new XlsWriter('data.xls');

// Export the data
Handler::create($source, $writer)->export();