>  기사  >  백엔드 개발  >  PHP Zip 파일

PHP Zip 파일

WBOY
WBOY원래의
2024-08-29 12:55:501051검색

PHP Zip 파일 기능은 여러 파일이나 디렉터리를 압축된 형태로 함께 저장하는 데 사용됩니다. Zip은 파일을 압축된 형식으로 저장하는 데 사용되는 아카이브 파일 형식입니다. Zip 아카이브는 많은 파일이나 디렉터리를 압축 형식으로 편리하게 함께 저장하여 저장하고 공유합니다. PHP Zip 파일은 PHP에 내장된 함수가 아닙니다. 다른 내장 함수는 PHP에서 사용할 수 있으므로 클래스가 없으면 설치해야 합니다. PHP 5 또는 다른 최신 버전을 사용하는 경우 필요한 확장 기능을 무료로 다운로드하여 설치할 수 있습니다. Zip 확장에는 libzip이 필요합니다.

무료 소프트웨어 개발 과정 시작

웹 개발, 프로그래밍 언어, 소프트웨어 테스팅 등

Zip 파일을 사용하려면 다음과 같이 설치를 수행해야 합니다.

Linux 사용자(PHP 5+):

  • Linux 사용자는 기본적으로 내장되어 있지 않으므로 PHP Zip 기능과 라이브러리를 다운로드하여 포함해야 합니다.
  • libzip 버전 0.11 이상이 설치되어 있는지, 권장 버전은 0.11.2 이상인지 확인하세요.
  • PHP 컴파일 중에 구성 옵션 –with-libzip=DIR을 사용하여 Zip 지원을 포함하세요.
  • Zip 기능을 활성화하려면 –enable-zip 플래그를 사용하여 PHP를 컴파일해야 합니다.

Windows 사용자(PHP 5+):

  • Linux와 마찬가지로 Windows 사용자의 경우 PHP Zip 기능과 라이브러리가 기본적으로 내장되어 있지 않습니다.
  • Zip 기능을 활용하려면 php.ini 구성 파일 내에 있는 php_zip.dll 파일을 다운로드하여 활성화하세요.
  • PHP 5.3에는 이 확장 기능이 이미 내장되어 있으므로 추가 단계가 필요하지 않습니다.

기능

Zip 파일로 작업하는 동안 아래에 언급된 기능 중 일부를 사용해야 합니다 –

  • zip_open(): 읽기 위해 ZIP 파일 아카이브를 엽니다.
  • zip_read(): 열려 있는 ZIP 파일 아카이브에서 다음 파일을 읽습니다.
  • zip_entry_open(): 읽기 위해 ZIP 파일의 디렉토리 항목을 엽니다.
  • zip_entry_read(): ZIP 파일의 열린 디렉토리 항목에서 읽습니다.
  • zip_entry_compressedsize(): ZIP 디렉터리 항목의 압축된 파일 크기를 검색합니다.
  • zip_entry_compressionmethod(): ZIP 디렉토리 항목의 압축 방법을 검색합니다.
  • zip_entry_filesize(): ZIP 디렉터리 항목 파일의 실제 크기를 검색합니다.
  • zip_entry_name(): ZIP 디렉토리 항목의 이름을 검색합니다.
  • zip_close(): ZIP 파일 아카이브를 닫습니다.
  • zip_entry_close(): ZIP 디렉토리 항목을 닫습니다.

PHP XML을 배열로 변환하는 예

Zip 파일 생성을 위한 PHP Zip 파일 예시-

다음으로, 다음 예를 통해 PHP Zip 파일을 더 명확하게 이해하기 위해 PHP 코드를 작성합니다. 여기서 Zip 파일은 아래와 같이 여러 파일과 디렉터리를 압축 형식으로 함께 저장하는 데 사용됩니다.

예시 #1

먼저 폴더를 만든 다음 번들로 묶고 압축할 파일이나 디렉터리를 만듭니다. 그런 다음 PHP 코드를 사용하여 압축합니다.

코드:

<?php
// give the path of directory whose file we want to Zip
$dir_path = "C:/xampp/htdocs/programs/";
// give the name to create the zipped directory
$zipfile = "ExZip.zip";
// Creating the new zip class
$zip_obj = new ZipArchive;
if( $zip_obj -> open( $zipfile, ZipArchive::CREATE ) === TRUE )
{
// open the directory at the gien path into the variable
$dir = opendir( $dir_path );
while( $file = readdir( $dir )) {
if( is_file( $dir_path.$file )) {
$zip_obj -> addFile( $dir_path.$file, $file );
}
}
$zip_obj ->close();
}
?>

출력:

PHP Zip 파일

위 코드와 마찬가지로 디렉터리 경로(모든 파일이 있는 곳부터 Zip까지)와 파일 이름(Zip 파일을 생성할 이름)이 있습니다. 먼저 "$zip_obj = new ZipArchive;" 코드를 사용하여 ZipArchive 클래스 개체를 생성합니다. 그런 다음 해당 디렉터리 경로에서 사용 가능한 모든 파일을 반복한 다음 ZipArchive 개체를 사용하여 "$zip_obj -> 코드를 사용하여 파일이 Zip 아카이브에 추가됩니다. addFile( $dir_path.$file, $file );.”

예시 #2

Zip 파일의 압축을 풀기 위한 PHP Zip 파일의 예-

다음으로 PHP Zip 파일을 이해하기 위해 PHP 코드를 작성합니다. 여기서는 Zip 파일의 압축을 풀어서 모든 zip 파일이나 디렉토리를 추출합니다.

코드:

<?php
// Enter the path of directory
$dir_path = "C:/xampp/htdocs/programs/";
// give the name to create the zipped directory
$zipfile = "ExZip.zip";
// create new zip class object
$zip_obj = new ZipArchive;
$file = $dir_path.$zipfile;
print("The Zip file location is : ");
print($file);
// Add zip filename which we need to unzip
$zip_obj->open( $file );
// Extract all the Zip files to the current directory
$zip_obj->extractTo('./');
$zip_obj->close();
?>

출력:

PHP Zip 파일

위 코드와 마찬가지로 디렉터리 경로와 파일명(압축을 풀 파일)이 있습니다. 먼저 "$zip_obj = new ZipArchive;" 코드를 사용하여 ZipArchive 클래스 개체를 생성합니다. 그런 다음 ZipArchive 개체를 사용하여 해당 경로에서 파일을 연 다음 "$zip_obj ->" 코드를 사용하여 Zip 아카이브에 추가된 모든 파일을 추출합니다. extractTo('./');”.

위 내용은 PHP Zip 파일의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:PHP 스캔프()다음 기사:PHP 스캔프()