加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP文件上传

发布时间:2020-12-13 21:25:01 所属栏目:PHP教程 来源:网络整理
导读:文件上传 ? 通过form表单实现,将文件上传到一个临时目录,上传的过程不需要我们管,只需将文件移动到我们期望的目录即可。 ? 1. 修改PHP配置文件 file_uploads? ??????? 服务器上的PHP脚本是否可以接受HTTP文件上传 ? memory_limit? ? ? ? 设置脚本可以分配

文件上传

?

通过<form>表单实现,将文件上传到一个临时目录,上传的过程不需要我们管,只需将文件移动到我们期望的目录即可。

?

1. 修改PHP配置文件

file_uploads? ???????      服务器上的PHP脚本是否可以接受HTTP文件上传

?

memory_limit? ? ?      ?设置脚本可以分配的最大内存量,防止失控脚本独占服务器内存

?

upload_max_filesize ?   ?限制PHP处理上传文件的最大值,此值必须小于post_max_size值

?

?post_max_size? ??????     限制通过POST方法可以接受的信息最大量

?

upload_tmp_dir???? ??    ? ?上传文件存放的临时路径,可以是绝对路径。这个目录对于拥有此服务器进程用户必须是可写的。

注意:修改完配置文件后重新启动服务器。

?

2. $_FILES多维数组,用于存储各种与上传有关的信息

$_FILES[‘file’][‘name’]? ??     客户端上传的文件原名称,含扩展名

$_FILES[‘file’][‘size’]??? ?     已上传文件的大小,单位为字节

$_FILES[‘file][‘tmp_name’] ??  ? ?文件上传后,在服务器端存储的临时文件名

$_FILES[‘file][‘error’]??? ?     文件上传时产生的错误

???????????? ???????????????         0:文件上传成功

???????????? ???????????????         1:上传文件的大小超出了在PHP配置文件中upload_max_filesize选项限制的值

???????????? ???????????????         2:上传文件大小超出了HTML表单中MAX_FILE_SIZE选项指定的值

???????????? ??????????????        ? 3:文件只被部分上传

???????????? ???????????????         4:没有上传任何文件

$_FILES[‘file’][‘type’] ?     ?上传文件的类型,每种MIME类型由‘/’分隔主类型和子类型组成

?

?

3. PHP文件上传处理函数

is_uploaded_file()      判断指定的文件是否通过HTTP POST上传的

move_uploaded_file()    文件上传后先存储于服务器的临时目录中,使用该函数移动文件位置

?

?

实验:

 1 <?php
 2     header('Content-type:text/html;charset=utf-8');
 3     //判断客户端是否有提交动作
 4     if(isset($_POST['submit'])){
 5         判断文件是否通过HTTP POST上传的
 6         is_uploaded_file($_FILES['myfile']['tmp_name' 7             用于服务器端显示客户端上传文件的后缀名.返回值是一个数组
 8             $arr=pathinfo($_FILES['myfile']['name']);
 9             以年 月 日的格式命名客户端上传的文件名并随机产生一个数,避免名字相同
10             $newName=date('YmdGis').rand(1000,9999911             move_uploaded_file($_FILES['myfile']['tmp_name'],"C:/123/{$newName}.{$arr['extension']}")){
12                 echo '成功';
13             }else{
14                 echo '失败'15             }
16         }17             exit('....'18         }
19     }
20     var_dump($_FILES21 ?>
22 <DOCTYPE html>
23 <html lang="en">
24 <head>
25 <meta charset="utf-8">
26 <title>文件上传</title>
27 </head>
28 <body>
29     <form method="post" action="" enctype="multipart/form-data">
30     <input type="file" name="myfile"/>
31     <input type="submit" name="submit" value="开始上传"/>
32     </form>
33 </body>
34 </html>

??

  

?

?

?

?

??

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读