bool feof ( resource $handle )
(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 댓글