您好,欢迎访问一九零五行业门户网

PHP开发札记系列(八)- 上传与下载

php开发笔记系列(八)- 上传与下载
? 最近由于项目需要,在gzbgy进行了闭关,与同行的developer进行了深入的交流,成果不赖。丢下了《php开发笔记系列(xampp+phpeclipse+xdebug)》,今天重新更新一下,这次讲上传下载。
?
? 上传与下载两个功能是再正常不过的基本功能,在java的开发中,下载会使用file类将文件内容以流的形式写入到response中,并设置相应和http header,让浏览器识别本次是文件下载。在php中也是类似,本文《php开发笔记系列(八)- 上传与下载》将是《php开发笔记系列(xampp+phpeclipse+xdebug)》的第八篇,讲述如何使用php完成文件的上传与下载操作。
? 1. 文件下载
? 文件下载的操作分为两部分,步骤:1)设置http header,2)读取文件。这里我们编写两个php脚本,第一个为file-list.php,用来显示当前文件夹下的所有文件夹和文件,供下载,第二个为download.php,具体的下载代码。代码如下:
?
file:file-list.phpurl:http://localhost:88/download-upload/file-list.php
??
file:download.phpurl:http://localhost:88/download-upload/download.php?filename=xxx
?? 2. 文件上传
? 在php中,文件上传非常简单,因为php已经自动识别enctype为multipart/form-data的请求,自动将里面的文件域中的内容upload到php的tmp文件夹中,我们可以过$_files[文件域名称][属性],如$_files[file][name]表示上传文件的原始名称、$_files[file][type]表示上传文件的类型、$_files[file][tmp_name]表示上传文件在php临时文件夹中的路径。由于生成的临时文件会被清空,因此我们需要使用move_uploaded_file()函数将临时文件移动到我们的指定目录中,其中第一个参数为临时文件的路径,第二个参数为目标文件的路径。代码如下:
?
file:upload-form.phpurl:http://localhost:88/download-upload/upload-form.php
filename:
??
file:upload.phpurl:http://localhost:88/download-upload/upload.php 0){ echo error: .$_files[file][error] .
;}else{ echo upload: .$_files[file][name].
; echo type: .$_files[file][type].
; echo size: .($_files[file][size] / 1024). kb
; echo temp file: .$_files[file][tmp_name].
; move_uploaded_file($_files[file][tmp_name], $_files[file][name]); echo file-list;}?>
? 本文地址:http://ryan-d.iteye.com/blog/1546706
?
?
其它类似信息

推荐信息