PHP文件下载示例代码分析
文件下载功能对于一个网站来说基本是必须的。我们今天就来看看PHP是如何实现文件下载的。
无控制类型
这里的非受控类型是指那些不需要添加PHP代码控制资源就可以直接下载的类型。一般来说,压缩文件。rar音频和视频文件:avi等也可以直接下载。但是,音频和mp4是由浏览器直接解析和播放的。下图:avi文件
。rar文件
。mp4、MP3、图片等。将被直接解析
核心代码
使用php代码来控制文件的下载是很容易的。我们可以用很少的代码完成如此复杂的工作。
类型
//使用basename函数,可以得到文件的名称而不是路径信息,保护服务器的目录安全头(' content-disposition : attachment;文件名='。basename($ filename));长度
标题(' content-length: '。文件大小($ filename));
实现功能
?PHP $ filename=$ _ GET[' filename '];//使用basename函数,可以得到文件的名称而不是路径信息,保护服务器的目录安全头(' content-disposition : attachment;filename=' $ filename);标题(' content-length: '。文件大小($ filename));read file($ filename);使最优化
当上面指定文件名时,我们不使用名为basename的函数,所以当我们下载文件时,我们会将文件的完整路径带到服务器上。
请注意,下载文件的名称不得包含其在服务器上的完整路径名,否则某些资源可能会泄露。即使有办法控制对资源的访问,使用basename函数也是好的。
原始下载文件的名称
优化的文件下载名称
摘要
相比Java实现,下载和使用php文件确实更方便。在下载的文件中,有很多信息提供给我们。通过这些封装的信息,我们可以实现一个更加优雅的文件下载系统。
以上就是本文的全部内容。希望对大家的学习有帮助,支持我们。
版权声明:PHP文件下载示例代码分析是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。