Box/Spout 个问题

Box/Spout questions

这是我第一次使用 Box/Spout 库。我正在使用 WAMP 服务器。
我的问题如下:

require_once('./spout-master/src/Spout/Autoloader/autoload.php');

use Box\Spout\Writer\WriterFactory;
use Box\Spout\Common\Type;

$filePath = 'test.xlsx';
$writer = WriterFactory::create(Type::XLSX);
$writer->openToFile($filePath);

[X]

$writer->addRow(['a'], $style);
$writer->close();

(1)
当我在 运行 以上代码时,我收到以下错误消息:

Warning: rmdir(C:\WINDOWS\TEMP/xlsx560f58d588ceb): Permission denied in        
C:\wamp\www00.revenue.com.my\public_html\spoutmaster\src\Spout\Common\Helper\FileSystemHelper.php on line 113

错误是什么意思,我应该如何修改它以防止出现此错误消息?

(2) 我想要如下所示的预期输出:

但是[X]部分不知道怎么写。怎么写才能得到预期的输出?

似乎无法删除用于生成 XLSX 文件的默认临时文件夹。您可以通过检查 C:\WINDOWS\TEMP/xlsx560f58d588ceb.

上的权限来验证它

要解决此问题,您可以手动修复临时文件夹 (C:\WINDOWS\TEMP) 的权限或使用另一个临时文件夹,如下所示:https://github.com/box/spout#using-custom-temporary-folder

关于 2),没有直接的方法可以使用 Spout 执行此操作。 Spout 不支持合并单元格。你唯一能做的就是:

| 1 | 2 |   | 3 |   |
|---|---|---|---|---|
|   | A | B | A | B |
|---|---|---|---|---|

或者(如果这样更有意义):

| 1 | 2 | 2 | 3 | 3 |
|---|---|---|---|---|
| 1 | A | B | A | B |
|---|---|---|---|---|

无论哪种方式,您都必须如上所示格式化行:[[1,2,'',3',''], ['', 'A','B','A','B']][[1,2,2,3,3], [1, 'A','B','A','B']]