[PHP] 파일의 내용 읽기 fread()

2022. 9. 27. 00:28Program/PHP

092_PHP 파일의 내용 읽기 fread()

[요약]

  • 파일의 내용을 읽는 함수 fread() 에 대해 알아보자.

파일 helloworld.txt 에 작성한 내용을 불러오는 방법에 대해 알아보자.

파일의 내용을 읽으려면 fread() 함수를 사용해야 하고, fread() 함수를 사용하려면 2개의 아규먼트를 입력해야 한다.

첫 번째 아규먼트는 fwrite() 함수를 사용할 때와 마찬가지로 fopen() 함수이며, 두 번째 아규먼트에는 불러올 용량(byte)으 입력한다.

5를 입력하면 파일의 내용 중 5byte 만큼만 내용을 불러온다.

보통 파일의 내용을 불러온다면 전체의 내용을 읽어오는 용도로 사용하기 때문에 파일의 용량을 입력한다.


[fread() 함수 사용 방법]

$fp = fopen('파일 경로와 파일명', 'r+');
$fr = fread($fp, '불러올 용량');

파일의 용량을 확인하려면 filesize() 함수를 사용한다.

filesize()는 바이트 단위의 용량을 반환한다.

 

[filesize() 함수 사용 방법]

filesize('파일 경로와 파일명');

파일을 읽기 전에 읽으려는 파일이 존재하는지의 여부를 확인해야 파일이 없더라도 발생할 수 있는 오류를 막을 수 있다.

파일 존재 여부를 확인하려면 file_exists() 함수를 사용한다.

 

[file_exists() 함수 사용 방법]

file_exists('파일명');

file_exists() 함수는 파일이 존재하면 true를 반환하고, 파일이 존재하지 않으면 false를 반환한다.

 

다음은 파일의 존재 여부를 확인하고 파일의 크기를 읽은 후 fread() 함수를 이용하여 파일의 내용을 읽고 출력하는 예제이다.

[예제: 95_fread.php ]

<?php
    $fileName = "helloworld.txt";
    // 파일 존재 여부 확인
    if (file_exists($fileName)) {
      // 파일 열기
      $fopen = fopen($fileName, 'r');
      if ($fopen) {
        //파일 읽기
        $fread = fread($fopen, filesize($fileName));
        if ($fread) {
          echo $fread; // 내용 출력
          fclose($fopen);  // 파일 닫기
        } else {
          echo "파일 읽기에 실패했습니다.";
        }
      } else {
        echo "파일 열기에 실패했습니다.";
      }
    } else {
      echo "파일이 존재하지 않습니다.";
    }
?>

실행결과

 

 


 

 

 

초보자를 위한 PHP 200제
김태영 지음 | 정보문화사