현재 위치: > 최신 기사 목록> zip_read () 함수의 기본 구문은 무엇입니까? 매개 변수와 특정 사용법은 무엇입니까?

zip_read () 함수의 기본 구문은 무엇입니까? 매개 변수와 특정 사용법은 무엇입니까?

M66 2025-06-23

php에서 zip_read ()는 zip 압축 패키지의 항목을 읽는 데 사용되는 함수입니다. 일반적으로 Zip_open () 과 함께 사용되므로 개발자가 Zip 파일의 개별 파일 또는 디렉토리 항목을 통과시켜 압축 패키지를 조작하고 처리 할 수 ​​있습니다.


1. zip_read () 함수의 기본 구문

 resource zip_read(resource $zip);
  • 매개 변수 설명 :

    • $ zip : Zip_Open () 에 의해 반환 된 ZIP 리소스 핸들.

  • 반품 값 :

    • 성공하면 리소스 핸들을 Zip 항목으로 반환합니다.

    • 실패시 False를 반환합니다.


2. 매개 변수에 대한 자세한 설명

zip_read () 에는 zip 리소스 핸들 인 매개 변수가 하나뿐입니다. 이 핸들은 zip_open () 함수를 통해 zip 파일을 열면 얻습니다.

예를 들어:

 $zip = zip_open('http://m66.net/path/to/your.zip');
if (is_resource($zip)) {
    while ($entry = zip_read($zip)) {
        // 오른쪽 $entry 공연하다
    }
    zip_close($zip);
}

3. 특정 사용에 대한 소개

일반적으로 다른 기능과 결합하여 Zip_read ()를 사용하여 Zip 파일의 파일 읽기를 실현합니다.

  • zip_entry_name ()은 현재 항목의 이름을 가져옵니다.

  • zip_entry_filesize ()는 현재 항목의 크기를 가져옵니다.

  • zip_entry_open ()은 현재 항목을 엽니 다.

  • zip_entry_read ()는 항목의 내용을 읽습니다.

  • zip_entry_close ()는 현재 항목을 닫습니다.

샘플 코드는 다음과 같습니다.

 $zip = zip_open('http://m66.net/files/example.zip');
if (is_resource($zip)) {
    while ($entry = zip_read($zip)) {
        $name = zip_entry_name($entry);
        echo "파일 이름: $name\n";
        
        if (zip_entry_open($zip, $entry)) {
            $size = zip_entry_filesize($entry);
            $contents = zip_entry_read($entry, $size);
            echo "파일 내용:\n$contents\n";
            zip_entry_close($entry);
        }
    }
    zip_close($zip);
} else {
    echo "열 수 없습니다ZIP문서";
}

이 예에서 :

  1. zip_open () 을 통해 http://m66.net/files/example.zip 에 위치한 원격 zip 파일을 엽니 다.

  2. zip_read ()를 사용하여 모든 항목을 루프하십시오.

  3. zip_entry_name ()을 사용하여 항목 이름을 출력하십시오.

  4. zip_entry_open ()zip_entry_read ()를 사용하여 항목 내용을 읽으십시오.

  5. 항목 및 지퍼 리소스를 닫습니다.


4. 주목할만한 것들

  • Zip_Read ()는 Zip_Open () 에 따라 Zip 파일 자원을 성공적으로 여야합니다.

  • 원격 지퍼 파일을 읽으려면 PHP의 allow_url_fopen을 활성화해야합니다.

  • 이 기능은 지퍼의 순차적 판독에 적합하며 임의의 액세스 항목에는 적합하지 않습니다.

  • 파일 이름 만 나열하려면 성능 소비를 피하기 위해 읽기 콘텐츠를 생략 할 수 있습니다.