PharFileInfo::compress

(PHP 5 >= 5.3.0, PHP 7, PECL phar >= 2.0.0)

PharFileInfo::compress — zlib 또는 bzip2 압축으로 현재 Phar 항목을 압축합니다.


설명

public PharFileInfo::compress(int $compression): bool

이 메서드는 bzip2 압축 또는 zlib 압축을 사용하여 Phar 아카이브 내부의 파일을 압축합니다. 이 기능을 활용하려면 bzip2 또는 zlib 확장을 활성화해야 합니다. 또한 파일이 이미 압축되어 있는 경우 파일의 압축을 풀려면 해당 확장자를 활성화해야 합니다. phar의 내용을 수정하는 모든 기능과 마찬가지로, 파일이 Phar 아카이브 내에 있는 경우 성공하려면 phar.readonly INI 변수가 꺼져 있어야 합니다. PharData 아카이브 내의 파일에는 이 제한이 없습니다.


매개변수

compression
압축은 Phar::GZ 또는 Phar::BZ2여야 합니다.

반환 값

성공하면 true를, 실패하면 false를 반환합니다.


오류/예외

phar.readonly INI 변수가 켜져 있거나 bzip2/zlib 확장을 사용할 수 없는 경우 BadMethodCallException을 던집니다.


Examples

예제 #1 PharFileInfo::compress() 예제

                  
<?php
try {
    $p = new Phar('/path/to/my.phar', 0, 'my.phar');
    $p['myfile.txt'] = 'hi';
    $file = $p['myfile.txt'];
    var_dump($file->isCompressed(Phar::BZ2));
    $p['myfile.txt']->compress(Phar::BZ2);
    var_dump($file->isCompressed(Phar::BZ2));
} catch (Exception $e) {
    echo 'Create/modify operations on my.phar failed: ', $e;
}
?>
                  
                

위의 예는 다음을 출력합니다.

bool(false)
bool(true)
                

기타