PHP 파일 열기/읽기/닫기
- 이전 페이지 PHP 파일
- 다음 페이지 PHP 파일 생성/쓰기
본 절에서는 서버에서 파일을 열고 읽고 닫는 방법을 설명합니다.
PHP 파일 열기 - fopen()
파일을 열는 더 나은 방법은 fopen() 함수를 사용하는 것입니다. 이 함수는 readfile() 함수보다 더 많은 옵션을 제공합니다.
본 과정에서는 텍스트 파일 "webdictionary.txt"를 사용하겠습니다:
AJAX = 비동기 자바스크립트 및 XML CSS = 캐스케이딩 스타일 시트 HTML = 히퍼 텍스트 마크업 언어 PHP = PHP 히포텍스트 프로세서 SQL = 구조화된 쿼리 언어 SVG = 대규모 벡터 그래픽 XML = 확장 가능 마크업 언어
fopen()의 첫 번째 매개변수는 열릴 파일의 이름을 포함하고, 두 번째 매개변수는 파일을 열는 모드를 정의합니다. fopen() 함수가 지정된 파일을 열지 못하면, 아래의 예제는 메시지를 생성합니다:
예제
<?php $myfile = fopen("webdictionary.txt", "r") or die("파일 열림 실패!"); echo fread($myfile, filesize("webdictionary.txt")); fclose($myfile); ?>
푸시:우리는 fread() 및 fclose() 함수를 다음으로 배웁니다.
파일은 다음 중 하나의 모드로 열립니다:
모드 | 설명 |
---|---|
r | 읽기로만 파일을 열어 파일 포인터는 파일开头에서 시작합니다. |
w | 쓰기로만 파일을 열어 파일 내용을 지우거나 파일이 없으면 새 파일을 생성합니다. 파일 포인터는 파일开头에서 시작합니다. |
a | 쓰기로만 파일을 열어 파일 내의 기존 데이터를 유지합니다. 파일 포인터는 파일 끝에서 시작합니다. 파일이 없으면 새 파일을 생성합니다. |
x | 쓰기로만 파일을 생성합니다. 파일이 이미 존재하면 FALSE와 오류를 반환합니다. |
r+ | 읽기/쓰기로 파일을 열고 파일 포인터는 파일开头에서 시작합니다. |
w+ | 읽기/쓰기로 파일을 열어 파일 내용을 지우거나 파일이 없으면 새 파일을 생성합니다. 파일 포인터는 파일开头에서 시작합니다. |
a+ | 읽기/쓰기로 파일을 열어 이미 있는 데이터를 유지합니다. 파일 포인터는 파일 끝에서 시작합니다. 파일이 없으면 새 파일을 생성합니다. |
x+ | 읽기/쓰기로 새 파일을 생성합니다. 파일이 이미 존재하면 FALSE와 오류를 반환합니다. |
PHP 파일 읽기 - fread()
fread() 함수는 열린 파일을 읽습니다.
fread()의 첫 번째 매개변수는 읽을 파일의 이름을 포함하고, 두 번째 매개변수는 읽을 최대 바이트 수를 정의합니다.
아래 PHP 코드는 "webdictionary.txt" 파일을 끝까지 읽습니다:
fread($myfile, filesize("webdictionary.txt"));
PHP 파일 닫기 - fclose()
fclose() 함수는 열린 파일을 닫기 위해 사용됩니다.
주의사항:파일을 사용한 후 모두를 닫는 것은 좋은 프로그래밍 습관입니다. 여러분은 서버 리소스를 사용하는 파일을 열고 싶지 않습니다.
fclose()는 닫혀야 할 파일의 이름(또는 파일 이름을 저장한 변수)이 필요합니다:
<?php $myfile = fopen("webdictionary.txt", "r"); // 실행되어야 할 일부 코드... fclose($myfile); ?>
PHP 파일을 단일 행으로 읽기 - fgets()
fgets() 함수는 파일에서 단일 행을 읽기 위해 사용됩니다.
"webdictionary.txt" 파일의 첫 번째 줄을 출력하는 예제:
예제
<?php $myfile = fopen("webdictionary.txt", "r") or die("파일 열림 실패!"); echo fgets($myfile); fclose($myfile); ?>
주의사항:fgets() 함수를 호출한 후, 파일 포인터는 다음 행으로 이동합니다.
PHP End-Of-File 확인 - feof()
feof() 함수는 "end-of-file" (EOF)에 도달했는지 확인합니다.
feof()는 불명확한 길이의 데이터를 순회하는 데 매우 유용합니다.
아래 예제는 "webdictionary.txt" 파일을 단일 행으로 읽고 파일의 마지막 문자까지 읽습니다:
예제
<?php $myfile = fopen("webdictionary.txt", "r") or die("파일 열림 실패!"); // 파일의 마지막 문자까지 단일 행을 출력 while(!feof($myfile)) { echo fgets($myfile) . "<br>"; } fclose($myfile); ?>
PHP 단일 문자 읽기 - fgetc()
fgetc() 함수는 파일에서 단일 문자를 읽기 위해 사용됩니다.
아래 예제는 "webdictionary.txt" 파일을 단일 문자로 읽고 파일의 마지막 문자까지 읽습니다:
예제
<?php $myfile = fopen("webdictionary.txt", "r") or die("파일 열림 실패!"); // 파일의 마지막 문자까지 단일 문자를 출력 while(!feof($myfile)) { echo fgetc($myfile); } fclose($myfile); ?>
주의사항:fgetc() 함수를 호출한 후, 파일 포인터는 다음 문자로 이동합니다.
PHP Filesystem 참조 매뉴얼
완전한 PHP 파일 시스템 참조 매뉴얼을 필요로 하시면, CodeW3C.com에서 제공하는 PHP Filesystem 참조 매뉴얼。
- 이전 페이지 PHP 파일
- 다음 페이지 PHP 파일 생성/쓰기