이 글은 CodeIgniter를 기반으로 한 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는 다중 이미지 업로드 및 단일 이미지 업로드 기능을 구현합니다.
PHP 휴대폰 SMS 인증 코드 구현 프로세스에 대한 자세한 설명
phpWeChat 공개 플랫폼 개발 WeChat 그룹 메시징 예제 공유
위 내용은 CodeIgniter를 기반으로 PHP에서 이미지 업로드 및 잘라내기 기능을 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!