PHP文件上传
程序员文章站
2022-03-20 13:18:45
开发中需要上传图片、音乐、视频等等,这种上传传递是二进制数据。 1.1客户端上传文件 文件域: 表单的enctype属性: 默认情况下,表单传递是字符流,不能传递二进制流,通过设置表单的enctype属性传递复合数据。 enctype属性的值有: application/x-www-form-url ......
开发中需要上传图片、音乐、视频等等,这种上传传递是二进制数据。
1.1客户端上传文件
文件域:
<input type="file" name="image">
表单的enctype属性:
默认情况下,表单传递是字符流,不能传递二进制流,通过设置表单的enctype属性传递复合数据。
-
application/x-www-form-urlencoded:【默认】,表示传递的是带格式的文本数据。
-
multipart/form-data:复合的表单数据(字符串,文件),文件上传必须设置此值
- text/plain:用于向服务器传递无格式的文本数据,主要用户电子邮件
1.2服务器接收文件
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.4与文件上传有关的配置
upload_max_filesize = 2m:允许上传的文件大小
upload_tmp_dir =f:\wamp\tmp:指定临时文件地址,如果不知道操作系统指定
file_uploads = on:是否允许文件上传
max_file_uploads = 20:允许同时上传20个文件
上一篇: 这一定是你爷爷啃剩的骨头
下一篇: 浅谈VUE uni-app 自定义组件