php下载的文档打开乱码,php下载文件出现乱码怎么办

当使用PHP下载文件出现乱码时,可以采用ob_clean()和ob_flush()函数清除输出缓冲区,确保正确下载。在下载前调用这两个函数,能够避免内容乱码。示例代码展示了如何在下载文件前应用这两个函数,从而实现无乱码下载。
摘要由CSDN通过智能技术生成

php下载文件出现乱码的解决方法:首先使用ob_clean()函数丢弃输出缓冲区中的内容;然后利用ob_flush()函数冲刷出输出缓冲区中的内容;最后下载文件即可。

4140c4eca690de6d5cea479e98896f6f.png

函数介绍:

ob_clean()函数用来丢弃输出缓冲区中的内容。

ob_flush()冲刷出(送出)输出缓冲区中的内容。

(相关视频推荐:java视频教程)

解决方法:

在下载文件之前,先使用以上两个函数进行处理,然后再下载即可,这样就不会出现乱码了。

代码实现:<?php

/**

* 强制下载文件

* @param string $filename 变量

* @param string $name 变量

* @return mixed

*/

function download($filename,$name){

if ((isset($filename))&&(file_exists($filename))){

header("Content-length: ".filesize($filename));

header('Content-Type: application/octet-stream');

header('Content-Disposition: attachment; filename="' . $name . '"');

ob_clean();

flush();

readfile("$filename");

} else {

$info="Looks like file does not exist!";

return $info;

}

}

?>

相关推荐:php培训

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值