php 上传图片 裁剪,php实现图片上传、剪切功能

本文实例为大家详细介绍了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"] = "./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);

}

}

}

以上就是本文的全部内容,希望对大家学习php程序设计有所帮助。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值