利用php下载xls文件(自己动手写的)


Posted in PHP onApril 18, 2014

昨天看ECSHOP源码的时候,碰到了一点自己没有学过的只是--如何利用php实现下载xls文件。根据它的源码,我动手实现了一下,成功实现了这个效果。

源码:

<?php 
/* 
*@Description:下载xls表 
* 
* 
*/ 
function downloadXls($filename=''){ 
$filename = !empty($filename) ? $filename : die('nothing'); //header 的作用是 新建一个被下载的test.xls 
header("Content-Type: application/vnd.ms-excel; charset=utf8"); 
header("Content-Disposition: attachment; filename=$filename"); 
//这里需要被输出的内容直接输出到test.xls文件中 
echo 'This is the test!'; 
exit; 
} 
$fileName = 'test.xls'; 
downloadXls($fileName); 
?>

效果:

利用php下载xls文件(自己动手写的) 

注意:如果输出的是中文信息的话,要注意字符编码的格式转换!

但如果我想下载的是服务器中保存的xls文件呢?

经过查看php手册:发现很简单就可以实现这个功能了,使用到了一个 readfile函数 。代码如下:

<?php 
/* 
*@Description:下载xls表 
* 
* 
*/ 
function downloadXls($filename=''){ 
$filename = !empty($filename) ? $filename : die('nothing'); //header 的作用是 新建一个被下载的test.xls 
header("Content-Type: application/vnd.ms-excel; charset=utf8"); 
header("Content-Disposition: attachment; filename=$filename"); 
//这里是需要被输出的文件 
readfile($filename); 
} 
$fileName = 'test.xls'; 
downloadXls($fileName); 
?>

效果:

利用php下载xls文件(自己动手写的) 

再拓展一下:如果我想下载的是一个txt文件呢,pdf文件呢?

实现的方法就是修改header 输出中的Content-Type中的内容!

有什么不多的地方,请大神指出!

PHP 相关文章推荐
ip签名探针
Oct 09 PHP
php+dojo 的数据库保存拖动布局的一个方法dojo 这里下载
Mar 07 PHP
PHP中spl_autoload_register()和__autoload()区别分析
May 10 PHP
php截取html字符串及自动补全html标签的方法
Jan 15 PHP
PHP中的一些常用函数收集
May 26 PHP
PHP文件下载实例代码浅析
Aug 17 PHP
PHP会话操作之cookie用法分析
Sep 28 PHP
php mysql procedure实现获取多个结果集的方法【基于thinkPHP】
Nov 09 PHP
php利用嵌套数组拼接与解析json的方法
Feb 07 PHP
PHP常见加密函数用法示例【crypt与md5】
Jan 27 PHP
php上传后台无法收到数据解决方法
Oct 28 PHP
Laravel5.1 框架控制器基础用法实例分析
Jan 04 PHP
php生成随机字符串可指定纯数字、纯字母或者混合的
Apr 18 #PHP
从PHP的源码中深入了解stdClass类
Apr 18 #PHP
理解PHP中的stdClass类
Apr 18 #PHP
php使用imagick模块实现图片缩放、裁剪、压缩示例
Apr 17 #PHP
php实现的漂亮分页方法
Apr 17 #PHP
codeigniter中测试通过的分页类示例
Apr 17 #PHP
php生成静态页面的简单示例
Apr 17 #PHP
You might like
PHP实现微信网页授权开发教程
2016/01/19 PHP
php 多进程编程父进程的阻塞与非阻塞实例分析
2020/02/22 PHP
javascript优先加载笔记代码
2008/09/30 Javascript
使用jquery的ajax需要注意的地方dataType的设置
2013/08/12 Javascript
使用AngularJS来实现HTML页面嵌套的方法
2015/06/17 Javascript
js实现当前输入框高亮显示的方法
2015/08/19 Javascript
jQuery zclip插件实现跨浏览器复制功能
2015/11/02 Javascript
使用JavaScript和CSS实现文本隔行换色的方法
2015/11/04 Javascript
移动端Ionic App 资讯上下循环滚动的实现代码(跑马灯效果)
2017/08/29 Javascript
node 命令方式启动修改端口的方法
2018/05/12 Javascript
Node.js Buffer模块功能及常用方法实例分析
2019/01/05 Javascript
JS实现吸顶特效
2020/01/08 Javascript
JS操作Fckeditor的一些常用方法(获取、插入等)
2020/02/19 Javascript
浅谈vue项目利用Hbuilder打包成APP流程,以及遇到的坑
2020/09/12 Javascript
实现vuex原理的示例
2020/10/21 Javascript
[04:31]2016国际邀请赛中国区预选赛妖精采访
2016/06/27 DOTA
python实现定时同步本机与北京时间的方法
2015/03/24 Python
python通过邮件服务器端口发送邮件的方法
2015/04/30 Python
开始着手第一个Django项目
2015/07/15 Python
python3中的md5加密实例
2018/05/29 Python
详解PyCharm配置Anaconda的艰难心路历程
2018/08/13 Python
python实现字符串中字符分类及个数统计
2018/09/28 Python
Python实现高斯函数的三维显示方法
2018/12/29 Python
pandas实现将dataframe满足某一条件的值选出
2019/06/12 Python
使用Django搭建网站实现商品分页功能
2020/05/22 Python
python Selenium 库的使用技巧
2020/10/16 Python
python 基于opencv 绘制图像轮廓
2020/12/11 Python
名人珠宝设计师:Melinda Maria Jewelry
2019/03/06 全球购物
大学毕业生求职自荐信
2014/02/20 职场文书
汽车技术服务与贸易专业求职信
2014/07/20 职场文书
2014年财务经理工作总结
2014/12/08 职场文书
初三英语教学计划
2015/01/23 职场文书
2015年大学辅导员工作总结
2015/05/12 职场文书
情况说明书格式及范文
2019/06/24 职场文书
python 利用 PIL 将数组值转成图片的实现
2021/04/12 Python
python爬取某网站原图作为壁纸
2021/06/02 Python