Posts Download file trên PHP sử dụng header http
Post
Cancel

Download file trên PHP sử dụng header http

Có thể tải trực tiếp một file có định dạng khác nhau xuống máy tính của người dùng bằng hàm readfile() của PHP thông qua header http

Đoạn mã dưới có thể áp dụng để download file trong PHP:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
function download_file_by_path($file_path) {
    if(file_exists($file_path)) {
        // HTTP header
        header('Content-Description: File Transfer');
        header('Content-Type: application/octet-stream');
        header('Content-Disposition: attachment; filename="'.urldecode(basename($file_path)).'"');
        header('Content-Transfer-Encoding: binary');
        header('Expires: 0');
        header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
        header('Pragma: public');
        header('Content-Length: ' . filesize($file_path));
        ob_clean(); // Clean the output buffer
        flush(); // Flush system output buffer
        readfile($file_path);
        exit;
    }
}
This post is licensed under CC BY 4.0 by the author.

Contents