首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >PHP-文件上传

PHP-文件上传

作者头像
cwl_java
发布2020-03-26 13:04:03
3.7K0
发布2020-03-26 13:04:03
举报
文章被收录于专栏:cwl_Javacwl_Java

1.6 文件上传

开发中需要上传图片、音乐、视频等等,这种上传传递是二进制数据。

1.6.1 客户端上传文件

文件域

<input type="file" name="image">

表单的enctype属性

​ 默认情况下,表单传递是字符流,不能传递二进制流,通过设置表单的enctype属性传递复合数据。

enctype属性的值有:

  1. application/x-www-form-urlencoded:【默认】,表示传递的是带格式的文本数据。
  2. multipart/form-data:复合的表单数据(字符串,文件),文件上传必须设置此值
  3. text/plain:用于向服务器传递无格式的文本数据,主要用户电子邮件

单词

multipart:复合
form-data:表单数组
1.6.2 服务器接受文件

超全局变量$_FILES是一个二维数组,用来保存客户端上传到服务器的文件信息。二维数组的行是文件域的名称,列有5个。 1、$_FILES[][‘name’]:上传的文件名 2、$_FILES[][‘type]:上传的类型,这个类型是MIME类型(image/jpeg、image/gif、image/png) 3、$_FILES[][‘size’]:文件的大小,以字节为单位 4、$_FILES[][‘tmp_name’]:文件上传时的临时文件 5、$_FILES[][‘error’]:错误编码(值有0、1、2、3、4、6、7)0表示正确

在这里插入图片描述
在这里插入图片描述

$_FILES[][‘error’]详解

错误描述

0

正确

1

文件大小超过了php.ini中允许的最大值 upload_max_filesize = 2M

2

文件大小超过了表单允许的最大值

3

只有部分文件上传

4

没有文件上传

6

找不到临时文件

7

文件写入失败

在这里插入图片描述
在这里插入图片描述

注意:MAX_FILE_SIZE必须在文件域的上面。

只要掌握的错误号:0和4

1.6.3 将上传文件移动到指定位置

函数:

move_uploaded_file(临时地址,目标地址)

代码

<body>
<?php
if(!empty($_POST)) {
	if($_FILES['face']['error']==0){  //上传正确
        //文件上传
		move_uploaded_file($_FILES['face']['tmp_name'],'./'.$_FILES['face']['name']);
	}else{
		echo '上传有误';
		echo '错误码:'.$_FILES['face']['error'];
	}
}
?>
<form method="post" action="" enctype='multipart/form-data'>
	<input type="file" name="face">
	<input type="submit" name="button" value="上传">
</form>
</body>

小结:上传的同名的文件要给覆盖

1.6.4 与文件上传有关的配置

post_max_size = 8M:表单允许的最大值

upload_max_filesize = 2M:允许上传的文件大小

upload_tmp_dir =F:\wamp\tmp:指定临时文件地址,如果不知道操作系统指定

file_uploads = On:是否允许文件上传

max_file_uploads = 20:允许同时上传20个文件

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-03-25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.6 文件上传
    • 1.6.1 客户端上传文件
      • 1.6.2 服务器接受文件
        • 1.6.3 将上传文件移动到指定位置
          • 1.6.4 与文件上传有关的配置
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档