关于response()->download下载word文件内容乱码?

爱吃鱼

问题描述

关于response()->download下载word文件内容乱码?

$fileName = "test.docx";
$templateProcessor = new \PhpOffice\PhpWord\TemplateProcessor('./public/reporttpl/test.docx');
$templateProcessor->setValue("name","test");
$templateProcessor->setValue("age",23);
$templateProcessor->setValue("sex","男");
$templateProcessor->setValue("barcode","23940294029402");
$templateProcessor->saveAs('./public/uploads/'.$fileName);
return response()->download("./public/uploads/".$fileName,"test.docx");
474 1 0
1个回答

xiuwang

说明生成的文件有问题

  • 爱吃鱼 2023-05-18

    saveAs方法保存的文件打开是没有乱码的。 response()->download()下载下来内容就乱码了。应该是编码问题,我试过转化编码还是不行。很奇怪

  • xiuwang 2023-05-18

    对比下saveAs保存的文件和response()->download()下载的文件md5是不是一致。
    用命令 md5sum 文件 来看文件md5值

  • 爱吃鱼 2023-05-18

    apipost问题强制了请求头返回信息。直接在浏览器上是可以下载的。

🔝