질문 Q #16238
image_lib 를 이용한 helper
강동원 2016-12-19 13:53:50
// controller

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Thumb extends CI_Controller {

 	function __construct()
	{
		parent::__construct();

	}

	function thumb_test() {
		$this->load->helper('thumb');
		make_thumb();
	}
}
//helper
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

function make_thumb(){

	$config['image_library'] = 'gd2';
	$config['source_image']	= './static/upload/image/original/148207021533.jpg';
	$config['create_thumb'] = TRUE;
	$config['maintain_ratio'] = TRUE;
	$config['width']	= 75;
	$config['height']	= 50;
	$config['thumb_maker'] = "thumb_";

	//print_r($config);
	
	$this->load->library('image_lib', $config);

	//$this->image_lib->initialize($config);
	$this->image_lib->resize();
	//$this->image_lib->clear();	
}

 

image_lib 를 이용해서 help를 만드려고 합니다. 

$this->load->library('image_lib', $config); 이부분에서 500에러가 납니다.

이미지 섬네일 생성하는 부분을 helper를 이용하지 않고 controll에서 바로 실행할때는 아무런 문제가 없는데 helper를 이용하니 문제가 생기네요. 고수님들 답변 좀 부탁드려요 (__ );

답변 5
#1 한대승(불의회상) 2016-12-19 14:11:26

library 로드하는 방법이 틀렸습니다.

아래처럼 바꾸세요.

$this->load->library('image_lib');
$this->image_lib->initialize($config);

 

#2 강동원 2016-12-19 16:24:45
알려 주신것과 같이 해 봐도 계속 500 에러가 뜨네요.
#3 강동원 2016-12-19 16:29:21

helper 파일에 있는 내용을 그대로 cotroller에 가져다 넣으면 잘 실행이 되거든요.

helper에만 들어가면 오류가 발생하네요

#4 변종원(웅파) 2016-12-20 10:16:39
헬퍼는 ci 제어권 바깥입니다. 인스턴스 선언해서 사용하셔야 합니다. 매뉴얼에서 instance 검색해보세요.
#5 강동원 2016-12-21 15:59:46
번번히 도움 주셔서 고맙습니다. 즐거운 크리스마스 되시길 바랍니다.