《PHP编程:PHP文件下载实例代码浅析》要点:
本文介绍了PHP编程:PHP文件下载实例代码浅析,希望对您有用。如果有疑问,可以联系我们。
文件下载的功能对一个网站而言基本上是必备的了,今天就来看看PHP是如何实现文件下载的吧.PHP编程
无控制类型PHP编程
这里说的无控制类型是指 没有添加PHP代码控制的资源可以被直接下载的那些类型.一般而言,压缩文件.rar; 音视频文件:..avi等等也可以被直接下载.但是音频和mp4则会直接被浏览器解析播放.
如下图:PHP编程
.avi文件PHP编程
PHP编程
.rar文件PHP编程
PHP编程
.mp4,MP3,图片等会被直接解析PHP编程
PHP编程
核心代码PHP编程
使用php代码控制文件的下载合适很简单的.我们住需要很少的代码便可以完成如此复杂的工作.PHP编程
类型PHP编程
// 使用basename函数可以获得文件的名称而不是路径信息,保护了服务器的目录安全性 header("content-disposition:attachment;filename=".basename($filename));
长度PHP编程
header("content-length:".filesize($filename));PHP编程
实现函数PHP编程
<?php $filename = $_GET['filename']; // 使用basename函数可以获得文件的名称而不是路径信息,保护了服务器的目录安全性 header("content-disposition:attachment;filename="$filename); header("content-length:".filesize($filename)); readfile($filename); ?>
优化PHP编程
上面指定文件名称的时候我们没有使用一个叫basename的函数,这样我们下载文件的时候将会连带着其在服务器上的文件的完整的路径.PHP编程
注意: 下载文件的名称一定不能包含其在服务器上的完整路径名称,否则有可能会导致部分资源的泄露.即使有办法能控制访问资源的权限,但是使用basename函数也是很好的.
PHP编程
原始下载文件的名称PHP编程
PHP编程
优化后的文件下载名称PHP编程
PHP编程
总结PHP编程
php文件下载使用起来相较于Java实现真的是太方便了呢.在下载文件的内部,有许多的信息提供给我们,通过这些封装好的信息,我们可以实现更加优雅的文件下载系统.
PHP编程
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持维易PHP.PHP编程
转载请注明本页网址:
http://www.vephp.com/jiaocheng/4768.html