我必须替换用户提交的 xlsx 文件中的变量,并这样做:
- 将 .xlsx 重命名为 .zip
- 解压到临时文件夹
- 进行必要的更改
- 压缩文件
- 将 .zip 重命名为 .xslx
我在 PHP 中使用普通的 ZipArchive。当我尝试在 Excel 中打开生成的 .xlsx 时,它会失败并显示一条消息format or extension invalid
。当我使用 WinRAR(作为 zip)压缩临时文件并将生成的文件重命名为 .xlsx 时,它可以工作。使用这两种方法生成的 zip 文件包含相同的数据结构和文件,但 WinRAR 文件稍大(10.2K 与正常压缩的 10.3K)。
在查看文件的乱码时,我可以看到文件以不同的顺序出现,但不知道是不是这个原因。任何线索将不胜感激。