解决方案 »

  1.   

    $_FILES 为空就是一个信号,phpinfo() 看post_max_file的值也能知道。
      

  2.   

    加个判断   
    $File['size'] <= 500 * 1024 or die(2); //文件超出500kb 
      

  3.   

    超過就直接出錯了。還怎樣知道呢?一般做法是post_max_size設大,然後在程序中限制。
      

  4.   

    $_FILES["file"]["error"]是错误代码,0表示没有错误,下面几种对应不同的错误
    1 : 上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值.
    2 : 上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。
    3 : 文件只有部分被上传
    4 : 没有文件被上传
      

  5.   

    //按不同的上传模式设置参数
            if(isset($_SERVER['HTTP_CONTENT_DISPOSITION']) &&
                preg_match('/attachment;\s+name="(.+?)";\s+filename="(.+?)"/i',
                    $_SERVER['HTTP_CONTENT_DISPOSITION'], $info))
            {
                $this->upload_method = self::HTML5_UP;
                
                //获取原始文件名
                $this->upload_name = urldecode($info[2]);
                
                //获取文件类型
                $this->upload_type = pathinfo($this->upload_name, PATHINFO_EXTENSION);
                
                //获取文件出错情况
                $this->upload_error = 0;
                
                //获取文件大小
                $this->upload_size = $_SERVER['CONTENT_LENGTH'];
                
                //获取原始文件扩展名
                $this->ext_name = pathinfo($this->upload_name, PATHINFO_EXTENSION);
            }
            else if(isset($this->upload_file))
            {
                $this->upload_method = self::NORMAL_UP;
                
                //获取原始文件名
                $this->upload_name = $this->upload_file[$this->upload_flag_name]["name"];
                
                //获取文件类型
                $this->upload_type = $this->upload_file[$this->upload_flag_name]["type"];
                
                //获取临时文件名
                $this->upload_tmp_name = $this->upload_file[$this->upload_flag_name]["tmp_name"];
                
                //获取文件出错情况
                $this->upload_error = $this->upload_file[$this->upload_flag_name]["error"];
                
                //获取文件大小
                $this->upload_size = $this->upload_file[$this->upload_flag_name]["size"];
                
                //获取原始文件扩展名
                $this->ext_name = pathinfo($this->upload_name, PATHINFO_EXTENSION);
            }
            else
            {
                $this->upload_error = 6;
            }思路就是4楼的思路,这是代码实现,可以获得上传文件的参数,包括文件大小。有苏州的PHP开发者吗?欢迎加入苏州PHP开发者部落,群号码:262578767