PharData::convertToExecutable
(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)
PharData :: convertToExecutable - 실행 불가능한 tar / zip 아카이브를 실행 가능한 phar 아카이브로 변환
설명
public PharData::convertToExecutable(?int $format
= null
, ?int $compression
= null
, ?string $extension
= null
): ?Phar
메모: 이 메서드는 Phar 객체에 대해 작동하기 위해 php.ini 설정 phar.readonly
를 0
으로 설정해야 합니다. 그렇지 않으면 PharException이 발생합니다.
이 메서드는 실행 불가능한 tar 또는 zip 아카이브를 실행 가능한 phar 아카이브로 변환하는 데 사용됩니다. 세 가지 실행 파일 형식(phar, tar 또는 zip) 중 하나를 사용할 수 있으며 전체 아카이브 압축도 수행할 수 있습니다.
변경 사항이 지정되지 않은 경우 이 메서드는 BadMethodCallException을 throw합니다.
성공하면 이 메서드는 디스크에 새 아카이브를 만들고 Phar 개체를 반환합니다. 이전 아카이브는 디스크에서 제거되지 않으며 프로세스가 완료된 후 수동으로 수행해야 합니다.
매개변수
format
Phar::TAR
또는Phar::ZIP
중 하나여야 합니다.null
로 설정하면 기존 파일 형식이 유지됩니다.compression
- 전체 아카이브 압축이 없는 경우
Phar::NONE
, zlib 기반 압축의 경우Phar::GZ
, bzip 기반 압축의 경우Phar::BZ2
중 하나여야 합니다. extension
- 이 매개변수는 변환된 아카이브의 기본 파일 확장자를 재정의하는 데 사용됩니다.
.phar
는 실행할 수 없는 tar 또는 zip 아카이브의 파일 이름 어디에도 사용할 수 없습니다.tar 기반 phar 아카이브로 변환하는 경우 기본 확장자는 지정된 압축에 따라
.tar
,.tar.gz
및.tar.bz2
입니다. zip 기반 아카이브의 경우 기본 확장자는.zip
입니다.
반환 값
이 메서드는 성공하면 Phar 개체를 반환하고 실패하면 null
을 반환합니다.
오류/예외
이 메서드는 phar 생성 과정중에 압축할 수 없는 경우 BadMethodCallException을 throw하고, 알 수 없는 압축 메서드가 지정되었으며, 요청된 아카이브가 Phar::startBuffering()으로 버퍼링 중이고 Phar::stopBuffering()으로 종료되지 않았으며, 실행 중에 문제가 발생하면 PharException이 발생합니다.
변경 로그
버전 | 설명 |
---|---|
8.0.0 |
format ,compression 및 localName 는 이제 null을 허용합니다.
|
Examples
예제 #1 PharData::convertToExecutable() 예제
PharData::convertToExecutable() 사용:
<?php
try {
$tarphar = new PharData('myphar.tar');
// convert it to the phar file format
// note that myphar.tar is *not* unlinked
$phar = $tarphar->convertToExecutable(Phar::PHAR); // creates myphar.phar
$phar->setStub($phar->createDefaultStub('cli.php', 'web/index.php'));
// creates myphar.phar.tgz
$compressed = $tarphar->convertToExecutable(Phar::TAR, Phar::GZ, '.phar.tgz');
} catch (Exception $e) {
// handle the error here
}
?>
기타
- Phar::convertToExecutable() - phar 아카이브를 다른 실행 가능한 phar 아카이브 파일 형식으로 변환
- Phar::convertToData() - phar 아카이브를 실행 불가능한 tar 또는 zip 파일로 변환
- PharData::convertToData() - phar 아카이브를 실행 불가능한 tar 또는 zip 파일로 변환