php教程 php手册 PHP上传文件大小限制问题 post_max_size对大小的影响及解决方法 - 艾维艾

PHP上传文件大小限制问题 post_max_size对大小的影响及解决方法 - 艾维艾

May 20, 2016 am 11:39 AM

今天在操作php上传的时候发现了一个问题,就是当php脚步上传的文件大小超过php.ini中post_max_size的限制的时候页面不会给出提醒,文件也上传失败,这个问题感觉应该算是一个另类,今天跟大家分享一下。

php.ini 配置对php上传文件大小的影响参数有:
       配置项                               可能值                功能描述
       file_uploads                       ON                        确定服务器上的PHP脚本是否可以接受HTTP文件上传
       memory_limit                   8M                        设置脚本可以分配的最大内存量,防止失控的脚本独占服务器内存
       upload_max_filesize        2M                        限制PHP处理上传文件的最大值,此值必须小于post_max_size值
       post_max_size                  8M                        限制通过POST方法可以接受的信息最大量

而对应的$_FILES 中error对应得错误提示有:

  文件上传时产生的错误
                                                                   0:表示没有发生任何错误,文件上传成功
                                                                   1:表示上传文件的大小超出了再PHP配置文件中upload_max_filesize选项限制的值
                                                                   2:表示上传文件大小超出了HTML表单中MAX_FILE_SIZE选项所指定的值   
                                                                   3:表示文件只被部分上传
                                                                   4:表示没有上传任何文件
由此看出php只能对upload_max_filesize这个配置项的限制做出判断,而对post_max_size则没有相应的判断,这时的页面其实是一个崩溃的状态,页面不会给出任何提示。

对于此问题,现在目前想到的方法是通过ini_get()函数获取到post_max_size配置值,然后送给前台,通过前台验证。还有一个是直接在后台验证也是先用ini_get()获取post_max_size的值,再与要上传的文件进行对比,不过这个要先通过ajax获取到文件的大小。

qq:411200871(艾维艾科技),如果您有好的方法可以相互沟通.

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)