pear / spreadsheet_excel_writer
无需COM对象即可写入Excel电子表格。支持公式、图像(BMP)以及文本和单元格的各种格式。
v0.9.7
2021-01-01 11:29 UTC
Requires
- php: >=5.6
- pear/ole: >=1.0.0RC4
- pear/pear-core-minimal: ^1.10
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2
- php-coveralls/php-coveralls: ^2.2
- phpunit/phpunit: >=5 <10
- sanmai/phpunit-legacy-adapter: ^6 || ^8
This package is auto-updated.
Last update: 2024-09-10 13:17:27 UTC
README
Spreadsheet_Excel_Writer
此包是Spreadsheet_Excel_Writer,并已从svn.php.net迁移过来。
请通过PEAR bug tracker报告所有新问题。
如果此包被标记为未维护,并且您有修复方案,请提交您的pull请求,并在pear-qa邮件列表上开始讨论。
安装
Pear
要测试,运行
$ phpunit
要构建,只需
$ pear package
从头开始安装
$ pear install package.xml
升级
$ pear upgrade -f package.xml
Composer
此包支持Composer。
通过Composer安装
$ composer require pear/spreadsheet_excel_writer
安装最新开发版本
$ composer require pear/spreadsheet_excel_writer:dev-master
功能
- 写入Excel (.XLS) 电子表格
- 支持:字符串(具有文本和单元格的格式化)、公式、图像(BMP)
限制
库仅支持XLS写入的两种格式,也称为二进制交换文件格式(BIFF)
- BIFF5(Excel 5.0 - Excel 95)
- BIFF8(Excel 98 - Excel 2003)
一些重要限制
有关您可在此处找到的格式和规范的说明 此处(“有用参考资料”部分)
仅当mbstring.func_overload = 0
时,保证正确输出,否则,您应使用工作区mb_internal_encoding('latin1');
用法
基本用法
use Spreadsheet_Excel_Writer; $filePath = __DIR__ . '/output/out.xls'; $xls = new Spreadsheet_Excel_Writer($filePath); // 8 = BIFF8 $xls->setVersion(8); $sheet = $xls->addWorksheet('info'); // only available with BIFF8 $sheet->setInputEncoding('UTF-8'); $headers = [ 'id', 'name', 'email', 'code', 'address' ]; $row = $col = 0; foreach ($headers as $header) { $sheet->write($row, $col, $header); $col++; } for ($id = 1; $id < 100; $id++) { $data = [ 'id' => $id, 'name' => 'Name Surname', 'email' => 'mail@gmail.com', 'password' => 'cfcd208495d565ef66e7dff9f98764da', 'address' => '00000 North Tantau Avenue. Cupertino, CA 12345. (000) 1234567' ]; $sheet->writeRow($id, 0, $data); } $xls->close();
格式用法
$xls = new Spreadsheet_Excel_Writer(); $titleFormat = $xls->addFormat(); $titleFormat->setFontFamily('Helvetica'); $titleFormat->setBold(); $titleFormat->setSize(10); $titleFormat->setColor('orange'); $titleFormat->setBorder(1); $titleFormat->setBottom(2); $titleFormat->setBottomColor(44); $titleFormat->setAlign('center'); $sheet = $xls->addWorksheet('info'); $sheet->write(0, 0, 'Text 123', $titleFormat);
标题用法(发送HTTP头以用于下载对话框)
$xls = new Spreadsheet_Excel_Writer(); $xls->send('excel_'.date("Y-m-d__H:i:s").'.xls');
性能
平台
Intel(R) Core(TM) i5-4670 CPU @ 3.40GHz
PHP 7.4
测试案例
写入xls(BIFF8格式,UTF-8),每行5个单元格(1个数字,4个无格式/样式的字符串,平均行长度=120个字符)
预计性能