php基於CodeIgniter實現圖片上傳、剪下功能的方法

來源:互聯網
上載者:User
這篇文章主要為大家詳細介紹了php基於CodeIgniter實現圖片上傳、剪下功能,具有參考價值,感興趣的朋友可以參考一下

具體內容如下

<?phpdefined('BASEPATH') OR exit('No direct script access allowed');class Index extends MY_Controller { function __construct(){    parent::__construct();    $this->load->helper(array('form', 'url'));  }  /**   * 首頁   */  public function index() {    $this->load->view('upload_form', array('error' => ' ' ));  }     public function do_upload()  {    $config['upload_path']   = './data/uploads/';    $config['allowed_types']  = 'gif|jpg|png';    $config['max_size']   = 100;    $config['max_width']    = 1024;    $config['max_height']    = 768;    $this->load->library('upload', $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());            $this->load->library('image_lib');         list($width, $height) = getimagesize($data['upload_data']['full_path']);   $config['image_library'] = 'gd2';   $config['source_image'] = $data['upload_data']['full_path'];   $config['maintain_ratio'] = TRUE;   if($width >= $height)   {     $config['master_dim'] = 'height';   }else{     $config['master_dim'] = 'width';   }   $config['width'] = 180;   $config['height'] = 180;   $this->image_lib->initialize($config);   $this->image_lib->resize();    $config['maintain_ratio'] = FALSE;   if($width >= $height)   {     $config['x_axis'] = floor(($width * 180 / $height - 180)/2);   }else{     $config['y_axis'] = floor(($height * 180 / $width - 180)/2);   }   $this->image_lib->initialize($config);   $this->image_lib->crop();         $this->load->view('upload_success', $data);    }  }}

總結:以上就是本篇文的全部內容,希望能對大家的學習有所協助。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.