定制 iter8/builder 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

iter8/builder

最新稳定版本:4.0.4

Composer 安装命令:

composer require iter8/builder

包简介

A wrapper for the PHP Excel library to help you quickly build reports

README 文档

README

A wrapper for the PhpSpreadsheet and Spout libraries to help you quickly build Excel reports.

Requirements

  • Silex ~2.x

Example Usage

$app['builder.default']   = 'spout'; // or 'phpspreadsheet'
$app['builder.cache_dir'] = '/var/cache';

$app->register(new BuilderServiceProvider());
// --- OR ---
$app->register(
    new BuilderServiceProvider(),
    [
        'builder.default'   => 'phpspreadsheet',
        'builder.cache_dir' => '/var/cache',
    ]
);
$builder = $app['builder'];

$reportArray = [
    'headers' => [
        'Column 1',
        'Column B',
    ],
    'rows' => [
        [
            'Some Data',
            'Some Other Data',
        ],
        [
            'Some Data 2',
            'Some Other Data 2',
        ],
    ],
];

$builder->setSheets([$reportArray]);

$builder->setCreator('App Name');
$builder->setTitle('My Spreadsheet');
$builder->setSheetTitles(['Sheet 1']);
$builder->setDescription('Spreadsheet that contains some data');
$builder->setFilename('App_Name_Spreadsheet_' . $startDate->format('d_m_Y'));

// use generate() to output headers and force file download.
$builder->generate();

// use generateExcel() to create the file.
$builder->generateExcel();

Both Builders are available under the $app['builders'] key, but $app['builder'] will be the default builder you specify.

PhpSpreadsheet

Accessible via $app['builders']['phpspreadsheet'].

Spout

Accessible via $app['builders']['spout'].

Feature Parity

Feature PhpSpreadsheet Spout
Cell Alignment Yes No
Auto-sizing Columns Yes No
Custom Column Widths Yes No
Document Properties Yes No
Header Styling Yes Yes
Multiple Sheets Yes Yes

Development

Todo

  • Allow both caching when building a report as well as short term or perm-caching to a configured location.

Testing

Minimal tests can be performed with PHPUnit.

Unit Tests

composer tests or ./vendor/bin/phpunit

Code Coverage

composer coverage

These will be available in ./builder_coverage.

统计信息

  • 总下载量: 14.51k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 0
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 3
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2018-07-27