php文件上传你必须知道的几点


Posted in PHP onOctober 20, 2015

本篇文章主要说明的是与php文件上传的相关配置的知识点。PHP文件上传功能配置主要涉及php.ini配置文件中的upload_tmp_dirupload_max_filesizepost_max_size等选项,下面一一说明。

php文件上传你必须知道的几点

打开php.ini配置文件找到File Uploads
file_uploads = On

默认允许HTTP文件上传,此选项不能设置为OFF。
upload_tmp_dir =
默认为空,此选项在手动配置PHP运行环境时,也容易遗忘,如果不配置这个选项,文件上传功能就无法实现,这个选项设置的是文件上传时存放文件的临时目录,你必须给这个选项赋值,比如upload_tmp_dir ='/leapsoulcn',代表在C盘目录下有一个leapsoulcn目录,和session配置一样,如果你是在linux环境下,你必须赋予这个目录可写权限。
如何上传超过8M的大文件?
上传大文件主要涉及配置upload_max_filesizepost_max_size两个选项。
php.ini配置文件中的默认文件上传大小为2M,php初学者容易犯的一个错误是在编写文件上传功能时通过设置上传文件最大大小的表单区域,即允许上传文件的最大值,max_file_size(隐藏值域)的值来规定上传文件的大小,其实一般别人可以绕过这个值,所以安全起见,最好是在php.ini配置文件中配置upload_max_filesize选项,设定文件上传的大小。
默认upload_max_filesize = 2M,即文件上传的大小为2M,如果你想上传超过8M的文件,比如20M,你必须设定upload_max_filesize = 20M
但是光设置upload_max_filesize = 20M还是无法实现大文件的上传功能,你必须修改php.ini配置文件中的post_max_size选项,其代表允许POST的数据最大字节长度,默认为8M。如果POST数据超出限制,那么$_POST和$_FILES将会为空。要上传大文件,你必须设定该选项值大于upload_max_filesize指令的值,我一般设定upload_max_filesize和post_max_size值相等。另外如果启用了内存限制,那么该值应当小于memory_limit选项的值。
文件上传的其他注意事项
在上传大文件时,你会有上传速度慢的感觉,当超过一定的时间,会报脚本执行超过30秒的错误,这是因为在php.ini配置文件中max_execution_time配置选项在作怪,其表示每个脚本最大允许执行时间(秒),0 表示没有限制。你可以适当调整max_execution_time的值,不推荐设定为0。
至此,在php.ini配置文件中对文件上传选项进行配置的PHP教程就介绍完毕了,通过上面的步骤实践与学习,再结合PHP程序,文件上传功能就可以实现了。

更多关于PHP文件上传的精彩内容请关注专题《PHP文件上传汇总》,希望对大家有帮助。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
用PHP实现小型站点广告管理
Oct 09 PHP
火车头采集器3.0采集图文教程
Mar 17 PHP
php在线代理转向代码
May 05 PHP
PHP 实现explort() 功能的详解
Jun 20 PHP
php弹出对话框实现重定向代码
Jan 23 PHP
php中json_encode处理gbk与gb2312中文乱码问题的解决方法
Jul 10 PHP
php中try catch捕获异常实例详解
Nov 21 PHP
zen cart实现订单中增加paypal中预留电话的方法
Jul 12 PHP
PHP7 新特性详细介绍
Sep 06 PHP
用PHP的反射实现委托模式的讲解
Mar 22 PHP
解决laravel5中auth用户登录其他页面获取不到登录信息的问题
Oct 08 PHP
php中try catch捕获异常实例详解
Aug 06 PHP
PHP判断上传文件类型的解决办法
Oct 20 #PHP
php上传大文件失败的原因及应对策略
Oct 20 #PHP
PHP中如何使用session实现保存用户登录信息
Oct 20 #PHP
PHP+jQuery翻板抽奖功能实现
Oct 19 #PHP
php生成动态验证码gif图片
Oct 19 #PHP
php批量删除超链接的实现方法
Oct 19 #PHP
php二维码生成
Oct 19 #PHP
You might like
php上传文件的增强函数
2010/07/21 PHP
PHP 清空varnish 缓存的详解(包括指定站点下的)
2013/06/20 PHP
php结合ajax实现赞、顶、踩功能实例
2014/05/12 PHP
phpmailer在服务器上不能正常发送邮件的解决办法
2014/07/08 PHP
php简单获取文件扩展名的方法
2015/03/24 PHP
Joomla调用系统自带编辑器的实现方法
2016/05/05 PHP
ThinkPHP5.1表单令牌Token失效问题的解决
2019/03/22 PHP
如何让动态插入的javascript脚本代码跑起来。
2007/01/09 Javascript
网上应用的一个不错common.js脚本
2007/08/08 Javascript
锋利的jQuery 第三章章节总结的例子
2010/03/23 Javascript
JQuery Dialog的内存泄露问题解决方法
2010/06/18 Javascript
jquery中使用ajax获取远程页面信息
2011/11/13 Javascript
Chosen 基于jquery的选择框插件使用方法
2012/05/30 Javascript
jQuery中animate()方法用法实例
2014/12/24 Javascript
jquery实现表单输入时提示文字滑动向上效果
2015/08/10 Javascript
JavaScript的React Web库的理念剖析及基础上手指南
2016/05/10 Javascript
浅析js绑定事件的常用方法
2016/05/15 Javascript
AngularJs定制样式插入到ueditor中的问题小结
2016/08/01 Javascript
js面向对象编程总结
2017/02/16 Javascript
layui监听工具栏的实例(操作列表按钮)
2019/09/10 Javascript
js判断密码强度的方法
2020/03/18 Javascript
js实现抽奖的两种方法
2020/03/19 Javascript
[22:20]初生之犊-TI4第5名LGD战队纪录片
2014/08/13 DOTA
django缓存配置的几种方法详解
2018/07/16 Python
利用python实现短信和电话提醒功能的例子
2019/08/08 Python
Python Serial串口基本操作(收发数据)
2020/11/06 Python
ASP.NET Core中的配置详解
2021/02/05 Python
北美最大的参茸药食商城:德成行
2020/12/06 全球购物
公务员转正考察材料
2014/02/07 职场文书
明信片寄语大全
2014/04/08 职场文书
2014年秋季开学典礼主持词
2014/08/02 职场文书
办公室主任岗位职责
2015/01/31 职场文书
财务出纳岗位职责
2015/03/31 职场文书
2015年挂职干部工作总结
2015/05/14 职场文书
2015初中政教处工作总结
2015/07/21 职场文书
Nginx性能优化之Gzip压缩设置详解(最大程度提高页面打开速度)
2022/02/12 Servers