PHPackages                             goletter/hyperf-excel - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [PDF &amp; Document Generation](/categories/documents)
4. /
5. goletter/hyperf-excel

ActiveLibrary[PDF &amp; Document Generation](/categories/documents)

goletter/hyperf-excel
=====================

Excel 同步/异步智能配置导入导出组件，为 Hyperf 框架提供强大的 Excel 处理能力,支持无限极列头配置,页码、列头、列样式配置。

v1.0.0(1mo ago)15MITPHPPHP &gt;=8.1

Since Jun 2Pushed 1mo agoCompare

[ Source](https://github.com/goletter/hyperf-excel)[ Packagist](https://packagist.org/packages/goletter/hyperf-excel)[ RSS](/packages/goletter-hyperf-excel/feed)WikiDiscussions main Synced 1w ago

READMEChangelogDependencies (18)Versions (2)Used By (0)

hyperf-excel
============

[](#hyperf-excel)

[![php](https://camo.githubusercontent.com/c3a80c86d7355ce233d937cc6ce506d4f9b1f34a91fb4b52d2d725a3bef932d0/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7068702d2533453d382e312d627269676874677265656e2e7376673f6d61784167653d32353932303030)](https://github.com/php/php-src)[![Latest Stable Version](https://camo.githubusercontent.com/fe704dfcd8ea0980027492bdb0c81ee6940d4cf586b113a872ada03043dfda49/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f766172747275657875616e2f6879706572662d657863656c)](https://packagist.org/packages/vartruexuan/hyperf-excel)[![License](https://camo.githubusercontent.com/9ea23bc016d1be867e982c0b8d2cb04f5a7e7b09b83b3fd5f8a552526853a5dc/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f766172747275657875616e2f6879706572662d657863656c)](https://github.com/vartruexuan/hyperf-excel)

📌 概述
----

[](#-概述)

Excel 同步/异步智能配置导入导出组件，为 Hyperf 框架提供强大的 Excel 处理能力。

✨ 组件能力
------

[](#-组件能力)

- ✅ **异步处理** - 支持异步导入导出
- 🧩 **复杂表头** - 支持`无限极`、`跨行`、`跨列`的复杂表头设计
- 🎨 **样式定制** - 可配置`页码样式`、`表头样式`、`列样式`
- 📊 **进度追踪** - 实时获取处理进度信息
- 💬 **消息系统** - 支持构建查询消息
- 📄 **格式支持** - 支持 `xlsx` 格式
- ⚙️ **驱动支持** - 基于 `xlswriter` 驱动

🚀 安装
----

[](#-安装)

### 前置准备

[](#前置准备)

安装依赖拓展 [xlswriter](https://xlswriter-docs.viest.me/zh-cn/an-zhuang)

```
pecl install xlswriter
```

- 依赖组件包 &lt;项目中安装,构建配置&gt;
    - [hyperf/filesystem](https://hyperf.wiki/3.1/#/zh-cn/filesystem?id=%e5%ae%89%e8%a3%85)
    - [hyperf/async-queue](https://hyperf.wiki/3.1/#/zh-cn/async-queue?id=%e5%bc%82%e6%ad%a5%e9%98%9f%e5%88%97)
    - [hyperf/logger](https://hyperf.wiki/3.1/#/zh-cn/logger?id=%e6%97%a5%e5%bf%97)
    - [hyperf/redis](https://hyperf.wiki/3.1/#/zh-cn/redis?id=redis)

### 安装组件

[](#安装组件)

```
composer require goletter/hyperf-excel
```

### 构建配置

[](#构建配置)

```
php bin/hyperf.php vendor:publish goletter/hyperf-excel
```

🛠 使用指南
------

[](#-使用指南)

- excel对象

```
$excel = ApplicationContext::getContainer()->get(\Goletter\HyperfExcel\ExcelInterface::class);
```

- 导出

```
/**
 * @var \Goletter\HyperfExcel\ExcelInterface $excel
 */
$exportData = $excel->export(new DemoExportConfig([
    // 额外参数
    'params'=> $request->all(),
]));
```

- 导入

```
/**
 * @var \Goletter\HyperfExcel\ExcelInterface $excel
 * @
 */
$exportData = $excel->import(new DemoImportConfig()->setPath('/d/xxx.xlsx'));
```

- 获取进度

```
/**
 * @var \Goletter\HyperfExcel\ExcelInterface $excel
 * @var \Goletter\HyperfExcel\Progress\ProgressRecord $progressRecord
 */
$progressRecord = $excel->getProgressRecord($token);
```

- 获取输出消息

```
/**
 * @var \Goletter\HyperfExcel\ExcelInterface $excel
 * @var \Goletter\HyperfExcel\Progress\ProgressRecord $progressRecord
 */
$isEnd = false; // 是否结束
$progressRecord = $excel->popMessageAndIsEnd($token, 50, $isEnd);
```

⚙️配置类配置
-------

[](#️配置类配置)

### 导出

[](#导出)

- config

```
