Home > Backend Development > PHP Problem > Solution to garbled Chinese characters in PHP downloads

Solution to garbled Chinese characters in PHP downloads

藏色散人
Release: 2023-03-02 10:00:01
Original
2565 people have browsed it

Solution to php downloading Chinese garbled characters: first open the relevant code file; then use the "iconv()" function to solve the garbled characters. The specific syntax is "$file_name = iconv("utf-8","gb2312", $file_name);".

Solution to garbled Chinese characters in PHP downloads

php download to solve the problem of Chinese garbled characters

Use iconv() function to solve the problem of garbled characters

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

The specific download code is as follows:

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();
    }
Copy after login

For more related knowledge, please visit PHP Chinese website!

The above is the detailed content of Solution to garbled Chinese characters in PHP downloads. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
php
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template