ecbc-phpoffice / phpspreadsheet
PHPSpreadsheet - 使用PHP读取、创建和写入电子表格文档 - 电子表格引擎
Requires
- php: ^7.3 || ^8.0
- ext-ctype: *
- ext-dom: *
- ext-fileinfo: *
- ext-gd: *
- ext-iconv: *
- ext-libxml: *
- ext-mbstring: *
- ext-simplexml: *
- ext-xml: *
- ext-xmlreader: *
- ext-xmlwriter: *
- ext-zip: *
- ext-zlib: *
- ezyang/htmlpurifier: ^4.13
- maennchen/zipstream-php: ^2.1
- markbaker/complex: ^3.0
- markbaker/matrix: ^3.0
- psr/http-client: ^1.0
- psr/http-factory: ^1.0
- psr/simple-cache: ^1.0 || ^2.0
Requires (Dev)
- dealerdirect/phpcodesniffer-composer-installer: dev-master
- dompdf/dompdf: ^1.0 || ^2.0
- friendsofphp/php-cs-fixer: ^3.2
- jpgraph/jpgraph: ^4.0
- mpdf/mpdf: 8.1.1
- phpcompatibility/php-compatibility: ^9.3
- phpstan/phpstan: ^1.1
- phpstan/phpstan-phpunit: ^1.0
- phpunit/phpunit: ^8.5 || ^9.0
- squizlabs/php_codesniffer: ^3.7
- tecnickcom/tcpdf: ^6.4
Suggests
- dompdf/dompdf: Option for rendering PDF with PDF Writer (doesn't yet support PHP8)
- jpgraph/jpgraph: Option for rendering charts, or including charts with PDF or HTML Writers
- mpdf/mpdf: Option for rendering PDF with PDF Writer
- tecnickcom/tcpdf: Option for rendering PDF with PDF Writer (doesn't yet support PHP8)
This package is not auto-updated.
Last update: 2024-09-26 20:51:47 UTC
README
PhpSpreadsheet 是一个纯PHP编写的库,提供了一系列类,允许您读取和写入各种电子表格文件格式,如 Excel 和 LibreOffice Calc。
PHP版本支持
LTS:PHP版本的支持将仅维持至该PHP版本的生命周期结束后的六个月。
当前所需的最低PHP版本是 PHP 7.3。
请参阅composer.json
了解其他要求。
安装
使用composer将 PhpSpreadsheet 安装到您的项目中
composer require phpoffice/phpspreadsheet
如果您在开发机器上构建安装,该机器的PHP版本与部署的服务器不同,或者您的PHP CLI版本与运行时(如php-fpm
或Apache的mod_php
)不同,那么在安装之前,您可能需要在composer.json
中添加以下内容
{ "require": { "phpoffice/phpspreadsheet": "^1.23" }, "config": { "platform": { "php": "7.3" } } }
然后运行
composer install
以确保获取到与您的部署环境匹配的正确依赖项。
有关更多信息,请参阅CLI与应用程序运行时。
其他安装选项
如果您想写入PDF或写入HTML或PDF时包含图表,那么您需要安装额外的库
对于PDF生成,您可以安装以下任何一个,然后配置 PhpSpreadsheet 指明您将使用哪个库
- mpdf/mpdf
- dompdf/dompdf
- tecnickcom/tcpdf
并使用以下配置 PhpSpreadsheet
// Dompdf, Mpdf or Tcpdf (as appropriate) $className = \PhpOffice\PhpSpreadsheet\Writer\Pdf\Dompdf::class; IOFactory::registerWriter('Pdf', $className);
或为所选库的适当PDF写入包装器配置。
图表导出
对于图表导出,我们支持以下内容,您也需要自行安装
- jpgraph/jpgraph
然后使用以下配置 PhpSpreadsheet
Settings::setChartRenderer(\PhpOffice\PhpSpreadsheet\Chart\Renderer\JpGraph::class);
您可以使用composer/require
jpgraph的github版本,但这个版本在4.0后被废弃;或从jpgraph.net手动下载支持PHP 8及以上版本的最新版本。
文档
有关更多信息,包括安装说明,请参阅官方文档。或查看API文档。
请在StackOverflow上提出您的支持问题,或者在Gitter上快速聊天。
PHPExcel 与 PhpSpreadsheet 的区别?
PhpSpreadsheet 是 PHPExcel 的下一代。它破坏了兼容性,以显著提高代码库质量(命名空间、PSR合规性、使用最新PHP语言特性等)。
因为所有努力都转向了 PhpSpreadsheet,PHPExcel 将不再维护。所有针对 PHPExcel 的贡献、补丁和新特性都应该针对 PhpSpreadsheet 的 master
分支。
您需要迁移吗?为此有一个自动化工具。
许可证
PhpSpreadsheet 采用 MIT 许可协议。