php 上传文件 php.ini,php.ini文件上传功能配置详解

分享下利用PHP实现文件上传功能时几点关键php.ini的配置。

PHP文件上传功能配置主要涉及php.ini配置文件中的upload_tmp_dir、upload_max_filesize、post_max_size等选项。

一,php.ini中文件上传功能配置选项说明

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

file_uploads = On

默认允许HTTP文件上传,此选项不能设置为OFF。

upload_tmp_dir =

默认为空,此选项在手动配置PHP运行环境时,如果不配置这个选项,文件上传功能就无法实现,这个选项设置的是文件上传时存放文件的临时目录,必须给这个选项赋值,比如upload_tmp_dir =’/leapsoulcn’,代表在C盘目录下有一个leapsoulcn目录,和session配置一样,如果是在linux环境下,必须赋予此目录可写权限。

二,如何上传超过8M的大文件?

上传大文件主要涉及配置upload_max_filesize和post_max_size两个选项。

php.ini配置文件中的默认文件上传大小为2M,最容易犯的错误是编写文件上传功能时通过设置上传文件最大大小的表单区域,即允许上传文件的最大值,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文件上传的方法。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值