php怎么导出文件?
在php编程中,如果要将查询结果导出到excel,只需对页面的context-type做修改即可。
例如:
代码示例:
header("content-type: application/vnd.ms-excel")
如果希望能够提供那个打开/保存的对话框,content-disposition参数,content-disposition参数本来是为了在客户端另存文件时提供一个建议的文件名,但是考虑到安全的原因,就从规范中去掉了这个参数。
content-disposition参数:
attachment --- 作为附件下载
inline --- 在线打开
具体使用:
代码示例:
header("content-disposition: inline; filename=文件名.mp3");header("content-disposition:attachment;filename=test.xls");
其实ie是根据content-disposition中filename这个段中文件名的后缀来识别这个文件类型的,如果有很多种文件类型的时候,可以将content-type设置为二进制模式的:
header("content-type: application/octet-stream");
例子:
代码示例:
<?$filename = './download/d.rar ';$filesize = filesize($filename);header( "content-type: application/force-download ");header( "content-disposition: attachment; filename= ".basename($filename));header( "content-length: ".$filesize);$data = file_get_contents($filename);echo $data;?>
以上代码实现打开页面后立即出现下载保存窗口,下载的文件为$filename。
部分常用mimetype类型:
$mimetypes = array( 'doc' => 'application/msword', 'bin' => 'application/octet-stream', 'exe' => 'application/octet-stream', 'so' => 'application/octet-stream', 'dll' => 'application/octet-stream', 'pdf' => 'application/pdf', 'ai' => 'application/postscript', 'xls' => 'application/vnd.ms-excel', 'ppt' => 'application/vnd.ms-powerpoint', 'dir' => 'application/x-director', 'js' => 'application/x-javascript', 'swf' => 'application/x-shockwave-flash', 'xhtml' => 'application/xhtml+xml', 'xht' => 'application/xhtml+xml', 'zip' => 'application/zip', 'mid' => 'audio/midi', 'midi' => 'audio/midi', 'mp3' => 'audio/mpeg', 'rm' => 'audio/x-pn-realaudio', 'rpm' => 'audio/x-pn-realaudio-plugin', 'wav' => 'audio/x-wav', 'bmp' => 'image/bmp', 'gif' => 'image/gif', 'jpeg' => 'image/jpeg', 'jpg' => 'image/jpeg', 'png' => 'image/png', 'css' => 'text/css', 'html' => 'text/html', 'htm' => 'text/html', 'txt' => 'text/plain', 'xsl' => 'text/xml', 'xml' => 'text/xml', 'mpeg' => 'video/mpeg', 'mpg' => 'video/mpeg', 'avi' => 'video/x-msvideo', 'movie' => 'video/x-sgi-movie', );
更多php相关知识,请访问!
以上就是php怎么导出文件的详细内容。