CI 묻고 답하기

제목 파일압축 해제
글쓴이 토끼와거북 작성시각 2014/02/13 14:27:57
댓글 : 4 추천 : 0 스크랩 : 0 조회수 : 12935   RSS
 unzip 이라는 라이브러리로 파일압축해제 하려고 하는데 라이브러리 로딩을 못하는데요. 

Unable to load the requested class: unzip
------------------------------------------------------------------------------------------------------------------------

include("./include/library/Unzip.php");

$file = '파일명';
$this->load->library('unzip');
$this->unzip->allow(array('css', 'js', 'png', 'gif', 'jpeg', 'jpg', 'tpl', 'html', 'htm', 'swf'));
$this->unzip->extract($file);
$this->unzip->extract($file, './extract');

------------------------------------------------------------------------------------------------------------------------
라이브러리는 몇 가지를 사용해 보았는데 정상 작동하는 것을 찾기 어렵네요.
아시는 분 계시면 알려 주시면 감사하겠습니다. 
 다음글 insert를 실행하면 오류없이 등록이 되었는지 여부 (1)
 이전글 다중 db 연결 관련 질문드립니다. (10)

댓글

한대승(불의회상) / 2014/02/13 14:51:52 / 추천 0
음....... 첫번째 라인의 include("./include/library/Unzip.php"); 는 어디에 들어가 있는건가요?
$file 에는 실제 압축된 파일이 들어간 경로를 집어 넣은건가요?

extract 폴더의 퍼미션은 어떻게 설정 되어 있나요?
토끼와거북 / 2014/02/13 14:56:19 / 추천 0
 include("./include/library/Unzip.php"); 는 컨트롤 파일 맨 상단에 넣었습니다.

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
 include("./include/library/Unzip.php");
class Data_input_controlls extends CI_Controller {
function __construct()
{
parent::__construct();
$this->output->enable_profiler(TRUE);
$this->load->helper('form');
$this->load->helper('alert');
}
}

$file 는 실제 파일명입니다. test.zip 이런식이죠.
윈도우에서 테스트하는데 잘 안 되네요.
한대승(불의회상) / 2014/02/13 15:04:56 / 추천 0
CI에서 로딩하여 사용 하려면 application/libraries 폴더 아래에 집어 넣으셔야 합니다.

그리고 난후에 아래 처럼 해주시면 됩니다.

$this->load->library('unzip'); 
$this->unzip->allow(array('css', 'js', 'png', 'gif', 'jpeg', 'jpg', 'tpl', 'html', 'htm', 'swf')); 
$this->unzip->extract($file); 
$this->unzip->extract($file, './extract');
직접 include 하면 에러가 납니다.
토끼와거북 / 2014/02/13 15:13:52 / 추천 0
수정하니까 되네요. 빠른 답변 감사드립니다.^^