【问题标题】:Box/Spout questions盒子/喷口问题
【发布时间】:2015-10-05 05:08:44
【问题描述】:

这是我第一次使用 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\www\1300.revenue.com.my\public_html\spoutmaster\src\Spout\Common\Helper\FileSystemHelper.php on line 113

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

(2) 我想做出如下预期的输出:

但我不知道如何在 [X] 部分写它。怎么写才能得到预期的输出?

【问题讨论】:

    标签: php xlsx


    【解决方案1】:

    似乎无法删除用于生成 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']]

    【讨论】:

      猜你喜欢
      • 2019-12-08
      • 1970-01-01
      • 1970-01-01
      • 2012-03-07
      • 2021-10-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多