php
PHP - feof 함수
bool feof ( resource $handle )
(PHP 4, PHP 5)
파일 포인터를 읽어 들인 위치가 끝인지 아닌지를 알기 위해 우선 파일을 "오픈"하고, "테스트"하고, "닫기"순으로 작성합니다. 해당 파일의 포인터가 끝이면 true를, 아니면 false를 반환합니다.
다음은 파일 다운로드 예제입니다.
(PHP 4, PHP 5)
파일 포인터를 읽어 들인 위치가 끝인지 아닌지를 알기 위해 우선 파일을 "오픈"하고, "테스트"하고, "닫기"순으로 작성합니다. 해당 파일의 포인터가 끝이면 true를, 아니면 false를 반환합니다.
<?php
if(filetype('test.php') === 'file'){
$fp = fopen("test.php", "rb"); // 오픈하기 (r은 읽기전용, b는 바이러니로 오픈하기)
while(!feof($fp)) { // 포인터의 위치가 끝이 아니면 실행
print fread($fp, 1024); // 한줄씩 읽어 옵니다.
flush();
}
fclose ($fp); // 닫기
}
clearstatcache();
?>
다음은 파일 다운로드 예제입니다.
<?php
$filename = 'test.php';
header("Cache-control: private");
header("Content-type: ".user_mime_content_type($filename));
header("Content-Disposition: attachment; filename=".$filename);
header("Content-Length: ".filesize($filename));
header("Cache-Control: cache, must-revalidate");
header("Content-Description: PHP3 Generated Data");
header("Pragma: no-cache");
header("Expires: 0");
if(filetype('test.php') === 'file'){
$fp = fopen("test.php", "rb"); // 오픈하기
while(!feof($fp)) {
print fread($fp, 1024); // 한줄씩 읽어 옵니다.
flush();
}
fclose ($fp); // 닫기
} else {
header_remove(); // 파일이 아니면 전송 헤더목록을 삭제합니다.
}
clearstatcache();
?>
0 댓글