当前位置 : 主页 > 网络编程 > PHP >

php codeigniter 图片上传、剪切

来源:互联网 收集:自由互联 发布时间:2021-06-28
?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() { $thi
 
<?php
defined('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']      = './datahttp://img.558idc.com/uploadfile/';
        $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);
        }
    }
}

网友评论