利用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 相关文章推荐
用PHP编写PDF文档生成器
Oct 09 PHP
phpMyAdmin2.11.6安装配置方法
Aug 24 PHP
php中过滤非法字符的具体实现
Oct 29 PHP
PHP中Session引起的脚本阻塞问题解决办法
Apr 08 PHP
ThinkPHP查询中的魔术方法简述
Jun 25 PHP
php计算指定目录下文件占用空间的方法
Mar 13 PHP
php正则表达式获取内容所有链接
Jul 24 PHP
ThinkPHP模板标签eq if 中区分0,null,false的方法
Mar 24 PHP
PHP学习笔记之session
May 06 PHP
php的优点总结 php有哪些优点
Jul 19 PHP
PHP Trait功能与用法实例分析
Jun 03 PHP
php去除数组中为0的元素的实例分析
Nov 17 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内核探索:变量概述
2014/01/30 PHP
ThinkPHP的SAE开发相关注意事项详解
2016/10/09 PHP
PHP获取本周所有日期或者最近七天所有日期的方法
2018/06/20 PHP
驱动事件的addEvent.js代码
2007/03/27 Javascript
测试JavaScript字符串处理性能的代码
2009/12/07 Javascript
Javascript load Page,load css,load js实现代码
2010/03/31 Javascript
js函数参数设置默认值的一种变通实现方法
2014/05/26 Javascript
jquery阻止后续事件只执行第一个事件
2014/07/24 Javascript
javascript实现网页中涉及的简易运动(改变宽高、透明度、位置)
2015/11/29 Javascript
BootStrapTable服务器分页实例解析
2016/12/20 Javascript
jQuery实现对象转为url参数的方法
2017/01/11 Javascript
利用jQuery+localStorage实现一个简易的计时器示例代码
2017/12/25 jQuery
JavaScript中使用import 和require打包后实现原理分析
2018/03/07 Javascript
浅谈vue-cli 3.0.x 初体验
2018/04/11 Javascript
JavaScript工具库之Lodash详解
2019/06/15 Javascript
vue-cli 项目打包完成后运行文件路径报错问题
2019/07/19 Javascript
vue+elementUI组件table实现前端分页功能
2020/11/15 Javascript
Python实用技巧之列表、字典、集合中根据条件筛选数据详解
2018/07/11 Python
Python 经典算法100及解析(小结)
2019/09/13 Python
浅谈对pytroch中torch.autograd.backward的思考
2019/12/27 Python
Pytorch中的VGG实现修改最后一层FC
2020/01/15 Python
Python结合Window计划任务监测邮件的示例代码
2020/08/05 Python
德国健康生活方式网上商店:Landkaufhaus Mayer
2019/03/12 全球购物
Tiqets英国:智能手机上的文化和娱乐门票
2019/07/10 全球购物
Shopping happy life西班牙:以最优惠的价格提供最好的时尚配饰
2020/03/13 全球购物
Linux的文件类型
2016/07/05 面试题
师范生实习的个人自我鉴定
2013/10/20 职场文书
电视购物广告词
2014/03/19 职场文书
老公给老婆的保证书
2014/04/28 职场文书
关于环保的活动方案
2014/08/25 职场文书
群教班子对照检查材料
2014/08/26 职场文书
2015年信贷员工作总结
2015/04/28 职场文书
单位同意报考证明
2015/06/17 职场文书
英语版自我评价,35句话轻松搞定
2019/10/08 职场文书
《别在吃苦的年纪选择安逸》读后感3篇
2019/11/30 职场文书
Go归并排序算法的实现方法
2022/04/06 Golang