Phar::addFile
(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)
Phar::addFile — 파일 시스템에서 phar 아카이브로 파일 추가
설명
public Phar::addFile(string $filename
, ?string $localName
= null
): void
메모: 이 메서드는 Phar 객체에 대해 작동하기 위해 php.ini 설정 phar.readonly
를 0
으로 설정해야 합니다. 그렇지 않으면 PharException이 발생합니다.
이 메서드를 사용하면 모든 파일이나 URL을 phar 아카이브에 추가할 수 있습니다. 선택적 두 번째 매개변수 localName
이 문자열이면 파일은 해당 이름으로 아카이브에 저장됩니다. 그렇지 않으면 file
매개변수가 아카이브에 저장할 경로로 사용됩니다. URL에는 지역 이름이 있어야 하며 그렇지 않으면 예외가 발생합니다. 이 메서드는 ZipArchive::addFile()과 유사합니다.
매개변수
filename
- phar 아카이브에 추가할 디스크의 파일에 대한 전체 또는 상대 경로입니다.
localName
- 파일이 아카이브에 저장될 경로입니다.
반환 값
반환 값이 없으며 실패 시 예외가 발생합니다.
변경 로그
버전 | 설명 |
---|---|
8.0.0 |
localName 은 이제 null을 허용합니다.
|
Examples
예제 #1 Phar::addFile() 예제
<?php
try {
$a = new Phar('/path/to/phar.phar');
$a->addFile('/full/path/to/file');
// demonstrates how this file is stored
$b = $a['full/path/to/file']->getContent();
$a->addFile('/full/path/to/file', 'my/file.txt');
$c = $a['my/file.txt']->getContent();
// demonstrate URL usage
$a->addFile('http://www.example.com', 'example.html');
} catch (Exception $e) {
// handle errors here
}
?>
노트
참고: Phar::addFile(), Phar::addFromString() 및 Phar::offsetSet()는 호출될 때마다 새 phar 아카이브를 저장합니다. 성능이 문제라면 Phar::buildFromDirectory() 또는 Phar::buildFromIterator()를 대신 사용해야 합니다.
기타
- Phar::offsetSet() - 내부 파일의 내용을 외부 파일의 내용으로 설정
- PharData::addFile() - 파일 시스템에서 tar/zip 아카이브로 파일 추가
- Phar::addFromString() - 문자열에서 phar 아카이브로 파일 추가
- Phar::addEmptyDir() - phar 아카이브에 빈 디렉토리 추가