20'C 흐림
서울 강남구
resource fopen ( string $filename , string $mode [, bool $use_include_path= false [, resource $context ]] )
(PHP 4, PHP 5)
fopen 함수는 파일을 열거나 새로 만들 수 있습니다. 첫 번째 인자는 파일명 또는 절대경로를 입력하고, 두 번째 인자는 다음 표의 모드를 사용할 수 있습니다.
모 드 | 설 명 |
---|---|
r | 읽기 전용으로 오픈합니다. |
r+ | 읽기와 쓰기 모드로 오픈합니다. |
w | 쓰기 전용으로 오픈합니다. 기존 파일 내용은 완전히 지워지고, 새로 만듭니다. 파일이 존재하지 않는다면 새로 만듭니다. |
w+ | 읽기와 쓰기 모드로 오픈합니다. 기존 파일 내용은 완전히 지워지고, 새로 만듭니다. 파일이 존재하지 않는다면 새로 만듭니다. |
a | 내용 추가, 파일의 끝에 내용을 추가합니다. 파일이 존재하지 않는다면 새로 만듭니다. |
a+ | 내용 추가와 읽기모드로 오픈하여 파일의 끝에 내용을 추가합니다. 파일이 존재하지 않는다면 새로 만듭니다. |
b | 바이너리모드로 오픈합니다. 윈도우환경에서는 필수 모드 |
다음은 바이너리 그림 출력 예제입니다.
fpassthru 함수는 처음 파일 포인터에서 끝까지의 파일 내용을 읽어 표준 출력으로 보냅니다.
fopen 함수가 바이너리에 안전하지만 바이너리와 텍스트 파일을 구별할 수 있는 윈도우 시스템에서는 b 플래그는 중요합니다. 그리고 fopen 함수를 사용할 때 fputs 함수나 fgets 함수 보다는 fread 함수나 fwrite 함수를 사용하는 것이 권장되며, 바이너리와 텍스트 파일을 구분하지 못하는 유닉스에서는 b 플래그가 필요치 않으나 윈도우환경에서는 중요한 부분입니다. 시스템 환경이 바뀔 수 있는 부분이 있다면 b 플래그를 사용하는 것이 좋습니다.
fputs 함수나 fgets 함수로 바이너리로 열거나 작성하더라도 바이너리 자료를 유지하지 못하는 경우가 있으므로 바이너리 자료 그대로 유지되는 fread 함수나 fwrite 함수를 이용하는 것을 권고하고 있습니다.