首页 > 代码库 > php 实现文件下载,兼容IE、Firefox、Chrome等浏览器

php 实现文件下载,兼容IE、Firefox、Chrome等浏览器

一、下载任意文件:

     Header("Content-type: application/octet-stream");        $ua = $_SERVER["HTTP_USER_AGENT"];        $encoded_filename = rawurlencode($filename);        if (preg_match("/MSIE/", $ua)) {            header(‘Content-Disposition: attachment; filename="‘ . $encoded_filename . ‘"‘);        } else if (preg_match("/Firefox/", $ua)) {            header("Content-Disposition: attachment; filename*=\"utf8‘‘" . $filename . ‘"‘);        } else {            header(‘Content-Disposition: attachment; filename="‘ . $filename . ‘"‘);        }        $file = ‘xxxx.pdf‘;        header("Content-Length: ". filesize("{$file}"));

二、PHPExcel导出excel文件下载:

     ...
$objWriter
= PHPExcel_IOFactory::createWriter($objPHPExcel, ‘Excel5‘); header(‘Content-Type: application/vnd.ms-excel‘); $ua = $_SERVER["HTTP_USER_AGENT"]; $encoded_filename = rawurlencode($filename); if (preg_match("/MSIE/", $ua)) { header(‘Content-Disposition: attachment; filename="‘ . $encoded_filename . ‘"‘); } else if (preg_match("/Firefox/", $ua)) { header("Content-Disposition: attachment; filename*=\"utf8‘‘" . $filename . ‘"‘); } else { header(‘Content-Disposition: attachment; filename="‘ . $filename . ‘"‘); } header(‘Cache-Control: max-age=0‘); $objWriter->save(‘php://output‘);