文件上传需要注意php.ini文件

文件上传需要注意php.ini文件

在正式讲解本章上传前,我们第一件事情是要注意观察php.ini文件。

我们第一次开始接触到如何修改php.ini文件,如果你的配置项与我们说的不一致,请注意修改。

我们来了解每一个配置项。

我们看一下如何修改php.ini。

php.ini的文件太多,找不到的时候你可以使用ctrl+f 搜索相关配置项。

配置项功能说明
file_uploadson为 开启文件上传功能,off为关闭
post_max_size系统允许的POST传参的最大值
upload_max_filesize系统允许的上传文件的最大值
memory_limit内存使用限制

建议尺寸: file_size(文件大小) < upload_max_filesize < post_max_size < memory_limit

另外,需要注意的是脚本执行时间。

max_execution_time,这什参数的单位为秒。
这个参数是设定脚本的最大执行时间。
也可以根据需求做适当的改变。通常不需要来修改,系统默认值即可。超大文件上传的时候,可能会涉及到这一项参数的修改。

上传时间太长了,会超时。如果你将此项参数设为0,则是不限制超时时间,不建议使。

完成了php.ini的相关配置,我们就可以开始试着完成第一次文件上传了。


继续学习
||
<form action="" enctype="multipart/form-data" method="post" name="uploadfile">上传文件:<input type="file" name="upfile" /><br> <input type="submit" value="上传" /></form> <?php //print_r($_FILES["upfile"]); if(is_uploaded_file($_FILES['upfile']['tmp_name'])){ $upfile=$_FILES["upfile"]; //获取数组里面的值 $name=$upfile["name"];//上传文件的文件名 $type=$upfile["type"];//上传文件的类型 $size=$upfile["size"];//上传文件的大小 $tmp_name=$upfile["tmp_name"];//上传文件的临时存放路径 //判断是否为图片 switch ($type){ case 'image/pjpeg':$okType=true; break; case 'image/jpeg':$okType=true; break; case 'image/gif':$okType=true; break; case 'image/png':$okType=true; break; } if($okType){ /** * 0:文件上传成功<br/> * 1:超过了文件大小,在php.ini文件中设置<br/> * 2:超过了文件的大小MAX_FILE_SIZE选项指定的值<br/> * 3:文件只有部分被上传<br/> * 4:没有文件被上传<br/> * 5:上传文件大小为0 */ $error=$upfile["error"];//上传后系统返回的值 echo "================<br/>"; echo "上传文件名称是:".$name."<br/>"; echo "上传文件类型是:".$type."<br/>"; echo "上传文件大小是:".$size."<br/>"; echo "上传后系统返回的值是:".$error."<br/>"; echo "上传文件的临时存放路径是:".$tmp_name."<br/>"; echo "开始移动上传文件<br/>"; //把上传的临时文件移动到up目录下面 move_uploaded_file($tmp_name,'up/'.$name); $destination="up/".$name; echo "================<br/>"; echo "上传信息:<br/>"; if($error==0){ echo "文件上传成功啦!"; echo "<br>图片预览:<br>"; echo "<img src=".$destination.">"; //echo " alt=\"图片预览:\r文件名:".$destination."\r上传时间:\">"; }elseif ($error==1){ echo "超过了文件大小,在php.ini文件中设置"; }elseif ($error==2){ echo "超过了文件的大小MAX_FILE_SIZE选项指定的值"; }elseif ($error==3){ echo "文件只有部分被上传"; }elseif ($error==4){ echo "没有文件被上传"; }else{ echo "上传文件大小为0"; } }else{ echo "请上传jpg,gif,png等格式的图片!"; } } ?>
提交重置代码
章节
笔记
提问
课件
反馈
捐赠

php入门教程之一周学会PHP

高并发千万级数据库系统解决方案
  • 推荐课程
  • 评论
  • 问答
  • 笔记
  • 课件下载

胡涂

move_uploaded_file($tmp_name,'up/'.$name); 后面为什么加上.$name

3年前    添加回复 0

胡涂

$okType是什么意思

3年前    添加回复 0

墨林

phpstudy环境测试,这行判断is_uploaded_file($_FILES['upfile']['tmp_name'])为空值,运行报错,在这个判断外面再加个判断运行就行了,判断逻辑 if(!empty($_FILES['upfile']))

4年前    添加回复 0

cdp

hhb

5年前    添加回复 0

多给点教程啊,这新手怎么看的懂!

6年前    添加回复 0

好坏皆是我

为什么我的php.ini里面找不到post_max_size和memory_limit

6年前    添加回复 0

年方几禾

用的是WampServer,该配置的都配置了,可是FILES还是为空值,怎么办…

6年前    添加回复 0

课件暂不提供下载,工作人员正在整理中,后期请多关注该课程~