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 를 이용해서 압축, 압축해제 등의 작업을 진행하실 수 있습니다.~
'프로그래밍 Tip > PHP' 카테고리의 다른 글
[PHP] 주간 날짜 구하기, 이전주, 다음주 (0) | 2021.03.17 |
---|---|
[PHP] Fatal error: Allowed memory size of 134217728 bytes exhausted (0) | 2017.09.25 |
[PHP] php 로 웹페이지 긁어오기 모든 방법 총정리! (0) | 2017.08.23 |
[PHP] FreeTDS 를 이용한 MSSQL database 연동 (0) | 2017.08.09 |
[오류] Assigning the return value of new by reference is deprecated (0) | 2014.09.11 |