2016-12-16 17:45:19 5933次浏览 6条回答 0 悬赏 10 金钱

基于 Yii2 框架写 excel 导出接口,使用的是 phpExcel 扩展,
$objectWrite->save('php://output') 不弹出窗口选择保存路径,而且出现乱码。
但是 $objectWrite->save(具体地址); 文件会保存到具体的文件夹里而且没有错误。

补充于 2016-12-20 14:40

返回的是二进制文件,前端通过 ajax 请求,content-type 依旧是 json;没能根据设置返回 'Content-Type: application/vnd.ms-excel'

最佳答案

  • yii修 发布于 2016-12-19 09:25 举报
    ob_end_clean();
    $filename = date('Y-m-d',time()).rand(100,999);
    header('Content-Type: application/vnd.ms-excel');
    header('Content-Disposition: attachment;filename="'.$filename.'.xls"');
    header('Cache-Control: max-age=0');
    $objWriter = \PHPExcel_IOFactory::createWriter($objectPHPExcel,'Excel5');
    $objWriter->save('php://output');
    exit;
    

    之前也碰到过这问题,后来不知道怎么就好了。这是我最后的输出,希望可以帮助你。

您需要登录后才可以回答。登录 | 立即注册
yyf
经理

yyf 上海

注册时间:2016-11-16
最后登录:2021-07-20
在线时长:22小时1分
  • 粉丝6
  • 金钱1215
  • 威望50
  • 积分1935

热门问题