php – CodeIgniter上传大文件

前端之家收集整理的这篇文章主要介绍了php – CodeIgniter上传大文件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我已经设置了codeigniter来上传文件< 2MB,工作正常.但我无法上传大型文件20MB>
function stage1()
    {
    ini_set('upload_max_filesize','200M');
    ini_set('post_max_size','200M');                               
    ini_set('max_input_time',3000);                                
    ini_set('max_execution_time',3000);

    $config['upload_path'] = './temp/';
    $config['allowed_types'] = 'zip';

    $this->load->library('upload',$config);
    $this->upload->initialize($config);                             
    if(!$this->upload->do_upload('userfile'))                       
    {
      $error = array('error' => $this->upload->display_errors());   
      $this->load->view('upload_form',$error);                     
    }
    else
    {
      $data = array('upload_data' => $this->upload->data());        
      //do stuff
    }
  }

我不确定上面的代码有什么问题.我重写PHP.ini接受更大的文件,并花更多的时间执行脚本,但它仍然返回相同的错误

You did not select a file to upload.

同样,这适用于小文件但不适用于大文件.

编辑:结果我的服务器提供商有限的文件上传,所以除了FTP文件之外没有解决方案.

下面的代码用在你的PHP文件中.
ini_set( 'memory_limit','200M' );
ini_set('upload_max_filesize','200M');  
ini_set('post_max_size','200M');  
ini_set('max_input_time',3600);  
ini_set('max_execution_time',3600);

在.htaccess文件中设置下面的代码

PHP_value upload_max_filesize 128M  
PHP_value post_max_size 128M  
PHP_value max_input_time 3600  
PHP_value max_execution_time 3600

评论后编辑我的答案

更新答案

在stage1函数中设置config参数.

$config['max_size'] = '1000000';
$config['max_width']  = '1024000';
$config['max_height']  = '768000';

然后尝试一下.

原文链接:https://www.f2er.com/php/134821.html

猜你在找的PHP相关文章