php 에서 ZipArchive 를 사용하려 하는데.. class 'ZipArchive' not found in..  이런 에러가 발생을 한다면?


결국엔 libzip 을 설치해 주어야 합니다.


이는 pecl 을 이용해서 간단히 설치를 할 수도 있지만..  


php.net 에서 최종버전 또는 버전을 선택하여 받아서 설치할 수 있습니다.


centos (리눅스계열) 에서의 설치를 예로 들겠습니다.



1. http://pecl.php.net/package/zip  사이트에 접속하여 사용할 버전을 다운로드 합니다.





2. 파일을 서버에 올린 후 설치 작업을 진행합니다.  (1.13.2 버전을 받은걸로 가정합니다.)


//모듈 이동

#mv zip-1.13.2.tgz /home/


//압축 해제

#tar xvfz zip-1.13.2.tgz


//디렉터리 이동

#cd zip-1.13.2


//phpize 실행

#phpize


//만약 phpize가 오류가 나면 phpinfo에서 include_path 의 위치를 확인합니다.

//저 같은 경우는 extension_dir가 /usr/local/php/lib/php 이였으므로 php 설치 폴더의 위치를 알수 있었습니다.

//혹은 yum install php-devel 등으로 설치하면 됩니다.

#/usr/local/php/bin/phpize


//모듈 configure

./configure --with-php-config=/usr/local/php/bin/php-config --enable-zip && make


//모듈 파일 이동

#cd modules/

#cp zip.so /usr/local/php/lib/php/extensions/ ;마찬가지로 phpinfo에서 extension위치 확인


//extension 경로 추가

#vim /usr/local/apache/conf/php.ini


extension_dir="/usr/local/php/lib/php/extensions"


extension="zip.so" 


//아파치 재시작

#/etc/init.d/httpd restart 



3. phpinfo() 내용을 확인하여.. 정상적으로 설치가 되어졌는지 확인합니다.


이런부분이 확인되어지면 됩니다.


그럼 php 에서 ZipArchive class 를 이용해서 압축, 압축해제 등의 작업을 진행하실 수 있습니다.~


블로그 이미지

슬픈외로움

개발이 어려워? 모든것엔 답이있다...

,