ZipArchive::getStream
(PHP 5 >= 5.2.0, PHP 7, PHP 8, PECL zip >= 1.1.0)
ZipArchive::getStream — 이름으로 정의된 항목에 대한 파일 핸들러 가져오기(읽기 전용)
설명
public ZipArchive::getStream(string $name
): resource|false
이름으로 정의된 항목에 대한 파일 핸들러를 가져옵니다. 현재로서는 읽기 작업만 지원합니다.
매개변수
name
- 사용할 항목의 이름입니다.
반환 값
성공하면 파일 포인터(리소스)를 반환하고 실패하면 false
를 반환합니다.
Examples
예 #1 fread()를 사용하여 항목 내용을 가져와 저장합니다.
<?php
$contents = '';
$z = new ZipArchive();
if ($z->open('test.zip')) {
$fp = $z->getStream('test');
if(!$fp) exit("failed\n");
while (!feof($fp)) {
$contents .= fread($fp, 2);
}
fclose($fp);
file_put_contents('t',$contents);
echo "done.\n";
}
?>
예 #2 이전 예제와 동일하지만 fopen() 및 zip 스트림 래퍼 사용
<?php
$contents = '';
$fp = fopen('zip://' . dirname(__FILE__) . '/test.zip#test', 'r');
if (!$fp) {
exit("cannot open\n");
}
while (!feof($fp)) {
$contents .= fread($fp, 2);
}
echo "$contents\n";
fclose($fp);
echo "done.\n";
?>
예 #3 스트림 래퍼 및 이미지, xml 기능과 함께 사용할 수도 있습니다.
<?php
$im = imagecreatefromgif('zip://' . dirname(__FILE__) . '/test_im.zip#pear_item.gif');
imagepng($im, 'a.png');
?>
기타
- ZipArchive::getStreamIndex() - 인덱스로 정의된 항목에 대한 파일 핸들러 가져오기(읽기 전용)
- ZipArchive::getStreamName() - 이름으로 정의된 항목에 대한 파일 핸들러 가져오기(읽기 전용)