仓酷云
标题:
PHP教程之用PHP完成文件下载
[打印本页]
作者:
爱飞
时间:
2015-2-4 00:16
标题:
PHP教程之用PHP完成文件下载
会PHP吗?会,我会把一加一的运算写在函数里,然后调用啦!下载 假如只是通俗的文件下载,完整没有需要用到php,用个<A href='http://xx.xx.com/xx.tar'></a>就能够,然而有的时分为让文件保密,只能给一局部人下载,明显不克不及够把链节告知他人,假如是如许哪就起不到保密的后果。 <P>上面这个函数就是一个用php写的文件下载的函数,它是把文件一段一段地读出来,再传送给客户端. function download($file_dir,$file_name)
//参数申明:
//file_dir:文件地点目次
//file_name:文件名
{
$file_dir = chop($file_dir);//去失落途径中过剩的空格
//得出要下载的文件的途径
if($file_dir != '')
{
$file_path = $file_dir;
if(substr($file_dir,strlen($file_dir)-1,strlen($file_dir)) != '/')
$file_path .= '/';
$file_path .= $file_name;
}
else
$file_path = $file_name;
//判别要下载的文件是不是存在
if(!file_exists($file_path))
{
echo '对不起,你要下载的文件不存在。';
return false;
}
$file_size = filesize($file_path);
header("Content-type: application/octet-stream");
header("Accept-Ranges: bytes");
header("Accept-Length: $file_size");
header("Content-Disposition: attachment; filename=".$file_name);
$fp = fopen($file_path,"r");
$buffer_size = 1024;
$cur_pos = 0;
while(!feof($fp)&&$file_size-$cur_pos>$buffer_size)
{
$buffer = fread($fp,$buffer_size);
echo $buffer;
$cur_pos += $buffer_size;
}
$buffer = fread($fp,$file_size-$cur_pos);
echo $buffer;
fclose($fp);
return true;
}
讲了这么多,无非是想说:学习PHP不仅要掌握方法,更多的是付出汗水,我不希望看到中途放弃的人,相信自己,相信自己的选择,更要相信自己的能力,如果自己想放弃,暴力一点的话,就自己抽自己一个嘴巴。
作者:
蒙在股里
时间:
2015-2-4 10:33
其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎
作者:
若天明
时间:
2015-2-4 10:33
先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。
作者:
灵魂腐蚀
时间:
2015-2-4 10:33
作为一个合格的coder 编码的规范是必须,命名方面我推崇“驼峰法”,另外就是自己写的代码最好要带注释,不然时间长了,就算是自己的代码估计看起来都费事,更不用说别人拉。
作者:
仓酷云
时间:
2015-2-4 20:41
最后介绍一个代码出错,但是老找不到错误方法,就是 go to wc (囧),出去换换气没准回来就找到错误啦。
作者:
小魔女
时间:
2015-2-8 05:40
微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox 支持的不是很好,所以能少用还是少用的好。
作者:
海妖
时间:
2015-2-10 11:04
我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能:
作者:
精灵巫婆
时间:
2015-3-1 09:23
写js我最烦的就是 ie 和 firefox下同样的代码 结果显示的结果千差万别,还是就是最好不要用遨游去调试,因为有时候遨游是禁用js的,有可能代码是争取结果被遨游折腾的认为是代码写错。
作者:
admin
时间:
2015-3-10 13:05
再就是混迹于论坛啦,咱们的phpchina的论坛就很强大,提出的问题一般都是有达人去解答的,以前的帖子也要多看看也能学到不少前辈们的经验。别的不错的论坛例如php100,javaeye也是很不错的。
作者:
山那边是海
时间:
2015-3-17 07:56
在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、
作者:
莫相离
时间:
2015-3-19 01:14
曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线 \\\\\\\'_\\\\\\\' ;
作者:
金色的骷髅
时间:
2015-3-25 04:14
使用zendstdio 写代码的的时候,把tab 的缩进设置成4个空格是很有必要的
作者:
只想知道
时间:
2015-4-2 04:51
环境搭建好,当你看见你的浏览器输出“it works\\\\\\\"时你一定是喜悦的。在你解决问题的时候,我强烈建议多读php手册。
作者:
透明
时间:
2015-4-6 09:02
当然这种网站的会员费就几十块钱。
作者:
乐观
时间:
2015-4-6 15:16
使用 jquery 等js框架的时候,要随时注意浏览器的更新情况,不然很容易发生框架不能使用。
作者:
兰色精灵
时间:
2015-4-7 16:03
微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox 支持的不是很好,所以能少用还是少用的好。
作者:
谁可相欹
时间:
2015-4-11 18:51
个人呢觉得,配wamp 最容易漏的一步就是忘了把$PHP$目录下的libmysql.dll拷贝到windows系统目录的system32目录下,还有重启apache。
作者:
深爱那片海
时间:
2015-4-17 14:13
微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox 支持的不是很好,所以能少用还是少用的好。
作者:
活着的死人
时间:
2015-4-17 15:59
不禁又想起那些说php是草根语言的人,为什么认得差距这么大呢。
作者:
分手快乐
时间:
2015-4-21 09:06
使用zendstdio 写代码的的时候,把tab 的缩进设置成4个空格是很有必要的
作者:
小女巫
时间:
2015-4-23 01:08
php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。
欢迎光临 仓酷云 (http://ckuyun.com/)
Powered by Discuz! X3.2