php下载中文乱码的解决办法-PHP问题

资源魔 34 0

php下载中文乱码的处理方法:起首关上相干代码文件;而后行使“iconv()”函数处理乱码,详细语法是“$file_name = iconv("utf-8","gb2312",$file_name);”。

php下载处理中文乱码成绩

行使 iconv() 函数处理乱码

$file_name = iconv("utf-8","gb2312",$file_name);

详细下载代码以下:

public function downloadAction(){
        header("Content-type:text/html;charset=utf-8");
        // 文件名
        $file_name="中文.txt";
        //用以处理中文不克不及显示进去的成绩
        $file_name = iconv("utf-8","gb2312",$file_name);
        // 文件门路
        // $file_sub_path=$_SERVER['DOCUMENT_ROOT'];
        $file_path=$file_sub_path.'/'.$file_name;
        //起首要判别给定的文件存正在与否
        if( !file_exists($file_path) || $file_path=='/' ){
            $arr = array(
'code' => '-103',
'message' => '操作失败',
'data' => '不该文件文件'
 );
            echo json_encode( $arr );
            die();
        }
        $fp=fopen($file_path,"r");
        $file_size=filesize($file_path);
        //下载文件需求用到的头
        Header("Content-type: application/octet-stream");
        Header("Accept-Ranges: bytes");
        Header("Accept-Length:".$file_size);
        Header("Content-Disposition: attachment; filename=".$file_name);
        $buffer=1024;
        $file_count=0;
        //向阅读器前往数据
        while(!feof($fp) && $file_count<$file_size){
            $file_con=fread($fp,$buffer);
            $file_count+=$buffer;
            echo $file_con;
        }
        fclose($fp);
        die();
    }

更多相干常识,请拜访PHP中文网!

以上就是php下载中文乱码的处理方法的具体内容,更多请存眷资源魔其它相干文章!

标签: php php教程 php故障解决 php使用问题

抱歉,评论功能暂时关闭!