zoukankan      html  css  js  c++  java
  • php 上传大文件主要涉及配置upload_max_filesize和post_max_size两个选项。

    转自: http://blog.sina.com.cn/s/blog_6c739e63010137ui.html

    php手册上传错误资料:http://php.net/manual/zh/features.file-upload.errors.php

    http://php.net/upload-max-filesize

    Maximum number of files that can be uploaded via a single request

    max_file_uploads = 20  :单个请求时,允许上传的最大文件数 ;

    Maximum allowed size for uploaded files.

    upload_max_filesize = 64M,允许上传你的最大文件大小 ; 

    ; Maximum size of POST data that PHP will accept.
    ; Its value may be 0 to disable the limit. It is ignored if POST data reading
    ; is disabled through enable_post_data_reading.

    post_max_size = 3M, 表单允许上传的最大文件大小,官方解释:http://php.net/post-max-size

    今天在做上传的时候出现一个非常怪的问题,有时候表单提交可以获取到值,有时候就获取不到了,连普通的字段都获取不到了,苦思冥想还没解决,最后问了师 傅,师傅看了说挺奇怪的,然后问我upload_max_filesize的值改了吗,我说改了啊,师傅也解决不了了。过了一会师傅问 post_max_size改了吗,我说那个和上传没关系吧,师傅没理我,我还是照着自己的想法继续测试,弄了半天还是不行,最后试了师傅提的意见,成功 了,原来上传是和post_max_size有关系的。

     
     
    总结:php.ini配置文件中的默认文件上传大小为2M, 默认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。

  • 相关阅读:
    10. Regular Expression Matching
    9. Palindrome Number
    6. ZigZag Conversion
    5. Longest Palindromic Substring
    4. Median of Two Sorted Arrays
    3. Longest Substring Without Repeating Characters
    2. Add Two Numbers
    链式表的按序号查找
    可持久化线段树——区间更新hdu4348
    主席树——树链上第k大spoj COT
  • 原文地址:https://www.cnblogs.com/tumio/p/4905811.html
Copyright © 2011-2022 走看看