PHP 파일() 처리 및 기능
⚡ 스마트 요약
PHP의 파일 처리는 서버에서 파일을 생성, 읽기, 쓰기, 복사 및 삭제하는 데 사용할 수 있는 풍부한 내장 함수 세트를 활용합니다. 이 가이드에서는 file_exists, fopen 및 그 모드, fwrite, fclose, fgets, copy, unlink, file_get_contents 함수를 실제 예제와 함께 다룹니다.

파일이란 무엇입니까?
파일은 단순히 컴퓨터에 정보를 저장하기 위한 리소스입니다.
파일은 일반적으로 다음과 같은 정보를 저장하는 데 사용됩니다.
- 프로그램의 구성 설정
- 연락처 이름과 전화번호 같은 간단한 데이터입니다.
- 이미지, 사진, 그림 및 이와 유사한 미디어.
PHP 파일 형식 지원
PHP 파일 함수는 다음을 포함하는 광범위한 파일 형식을 지원합니다.
- File.txt
- 파일.로그
- 파일 이름.사용자 지정 확장자(예: file.xyz)
- 파일.csv
- File.gif, file.jpg 및 이와 유사한 이미지 형식
파일은 여러 상황에서 유용합니다.
- DBMS 시스템 관리를 위해 별도의 소프트웨어와 기술이 필요한 데이터베이스와 달리, DBMS는 단순 데이터에 대해 영구적이고 비용 효율적인 데이터 저장 솔루션을 제공합니다.
- 나중에 검색하고 분석할 수 있도록 서버 로그와 같은 간단한 데이터를 저장하고 싶습니다.
- 프로그램 설정, 즉 program.ini 파일을 저장하고 싶으신가요?
PHP 파일 함수
PHP는 풍부한 내장 함수 모음을 통해 파일을 다루는 편리한 방법을 제공합니다.
Opera팅 시스템과 같은 Windows macOS 대소문자를 구분하지 않습니다. Linux or 유닉스 운영 체제는 대소문자를 구분합니다.
파일 이름 지정 시 소문자만 사용하는 등의 명명 규칙을 채택하는 것은 플랫폼 간 호환성을 극대화하는 좋은 방법입니다.
이제 가장 일반적으로 사용되는 PHP 파일 함수 몇 가지를 살펴보겠습니다.
PHP file_exists() 함수
이 함수는 파일이 존재하는지 여부를 확인하는 데 사용됩니다.
- 파일을 처리하기 전에 파일이 존재하는지 여부를 알고 싶을 때 유용합니다.
- 새 파일을 생성하고 해당 파일이 서버에 이미 존재하지 않는지 확인하려는 경우에도 이 기능을 사용할 수 있습니다.
file_exists 함수의 구문은 다음과 같습니다.
<?php file_exists($filename); ?>
이리,
- "file_exists()"는 파일이 있으면 true를 반환하고 파일이 없으면 false를 반환하는 PHP 함수입니다.
- "$filename"은 검사할 파일의 경로와 이름입니다.
아래 코드는 file_exists 함수를 사용하여 my_settings.txt 파일이 존재하는지 확인합니다.
<?php if (file_exists('my_settings.txt')) { echo 'file found!'; } else { echo 'my_settings.txt does not exist'; } ?>
위 코드를 file_function.php라는 파일에 저장하세요. htdocs 폴더 안의 phptuts 폴더에 파일을 저장했다고 가정하면, 해당 파일을 열어보세요. URL http://localhost/phptuts/file_function.php 브라우저에서 검색하시면 다음과 같은 결과가 나타납니다.
PHP fopen() 함수
fopen 함수는 파일을 여는 데 사용됩니다. 구문은 다음과 같습니다.
<?php fopen($file_name,$mode,$use_include_path,$context); ?>
이리,
- "fopen"은 PHP 파일 열기 함수입니다.
- "$file_name"은 열려는 파일의 이름입니다.
- "$mode"는 파일을 열 때 사용할 모드입니다. 아래 표는 사용 가능한 모드를 보여줍니다.
| 모드 | 기술설명 |
|---|---|
| r | • 파일을 처음부터 읽습니다. • 파일이 존재하지 않으면 false를 반환합니다. • 읽기 전용 |
| r+ | • 처음부터 파일 읽기 • 파일이 존재하지 않으면 false를 반환합니다. • 읽고 쓰기 |
| w | • 처음부터 파일에 쓰기 • 파일 길이를 0으로 줄입니다. • 파일이 존재하지 않으면 파일을 생성해 보십시오. • 쓰기 전용 |
| w+ | • 처음부터 파일에 쓰고 파일을 XNUMX 길이로 자릅니다. • 파일이 존재하지 않으면 파일을 생성해 보십시오. • 읽고 쓰기 |
| a | • 파일 끝에 추가 • 파일이 존재하지 않으면 파일을 생성해 보십시오. • 쓰기 전용 |
| a+ | • 파일 끝에 추가 • 파일이 존재하지 않으면 파일을 생성해 보세요. • 읽고 쓰기 |
- "$use_include_path"는 선택 사항이며 기본값은 false입니다. true로 설정하면 함수는 포함 경로에서도 검색합니다.
- "$context"는 선택 사항이며 컨텍스트 지원을 지정하는 데 사용할 수 있습니다.
PHP fwrite() 함수
fwrite 함수는 파일에 쓰는 데 사용됩니다.
구문은 다음과 같습니다.
<?php fwrite($handle, $string, $length); ?>
이리,
- "fwrite"는 파일에 쓰기 위한 PHP 함수입니다.
- "$handle"은 파일 포인터 리소스입니다.
- "$string"은 파일에 기록될 데이터입니다.
- "$length"는 선택 사항이며 최대 파일 길이를 지정하는 데 사용할 수 있습니다.
PHP fclose() 함수
PHP에서 `fclose()` 함수는 이미 열려 있는 파일을 닫는 데 사용됩니다.
구문은 다음과 같습니다.
<?php fclose($handle); ?>
이리,
- "fclose"는 PHP 기능 열린 파일을 닫는 데
- "$handle"은 파일 포인터 리소스입니다.
이제 my_settings.txt 파일을 생성하는 예제를 살펴보겠습니다. fopen, fwrite, fclose 함수를 사용하겠습니다.
아래의 "create_my_settings_file.php" 코드는 위의 예를 구현합니다.
| 파일을 엽니 다 |
<?php $fh = fopen("my_settings.txt", 'w') or die("Failed to create file"); ?> |
| 파일 닫기 |
<?php fclose($fh); ?> |
| 파일 만들기 |
<?php $fh = fopen("my_settings.txt", 'w') or die("Failed to create file"); $text = <<<_END localhost;root;pwd1234;my_database _END; fwrite($fh, $text) or die("Could not write to file"); fclose($fh); echo "File 1 written successfully"; ?> |
코드 테스트
열기 URL http://localhost/phptuts/create_my_settings.php 브라우저에서.
다음 페이지가 나타납니다.
참고: 디스크가 꽉 찼거나 파일 쓰기 권한이 없으면 오류 메시지가 표시됩니다.
다시 전환하세요 URL http://localhost/phptuts/file_function.php어떤 결과가 나오나요?
PHP fgets() 함수
`fgets` 함수는 PHP 파일을 한 줄씩 읽는 데 사용됩니다. 기본 구문은 다음과 같습니다.
<?php fgets($handle); ?>
이리,
- "fgets"는 PHP에서 파일의 각 줄을 읽는 함수입니다.
- "$handle"은 파일 포인터 리소스입니다.
이제 fopen 및 fgets 함수를 사용하여 my_settings.txt 파일을 읽는 예제를 살펴보겠습니다.
read_my_settings.php 아래 코드는 위의 예를 구현합니다.
<?php $fh = fopen("my_settings.txt", 'r') or die("File does not exist or you lack permission to open it"); $line = fgets($fh); echo $line; fclose($fh); ?>
이리,
- "fopen" 함수는 파일 경로에 지정된 파일에 대한 포인터를 반환합니다.
- "die()" 함수는 오류가 발생할 경우 호출됩니다. 이 함수는 오류 메시지를 표시하고 스크립트 실행을 종료합니다.
PHP copy () 함수
PHP의 copy 함수는 파일을 복사하는 데 사용됩니다. 기본 구문은 다음과 같습니다.
<?php copy($file,$copied_file); ?>
이리,
- "$file"은 복사할 파일의 경로와 이름을 지정합니다.
- "$copied_file"은 복사된 파일의 경로와 이름을 지정합니다.
아래 코드는 구현을 보여줍니다.
<?php copy('my_settings.txt', 'my_settings_backup.txt') or die("Could not copy file"); echo "File successfully copied to 2"; ?>
파일 삭제
unlink 함수는 파일을 삭제하는 데 사용됩니다. 아래 코드는 구현 방법을 보여줍니다.
<?php if (!unlink('my_settings_backup.txt')) { echo "Could not delete file"; } else { echo "File 1 successfully deleted"; } ?>
PHP file_get_contents() 함수
file_get_contents 함수는 전체 파일 내용을 읽는 데 사용됩니다.
file_get_contents와 fgets의 차이점은 file_get_contents는 파일 데이터를 문자열로 반환하는 반면, fgets는 파일을 한 줄씩 읽어온다는 것입니다.
아래 코드는 구현을 보여줍니다.
<?php echo "<pre>"; // Enables display of line feeds echo file_get_contents("my_settings.txt"); echo "</pre>"; // Terminates pre tag ?>
PHP 파일 함수 빠른 참조
아래 표는 이 튜토리얼에서 다룬 파일 기능을 요약한 것입니다.
| 함수 | 기술설명 |
|---|---|
| 파일이 존재 | 파일이 존재하는지 여부를 확인하는 데 사용됩니다. |
| 포펜 | 파일을 여는 데 사용됩니다. 열린 파일에 대한 포인터를 반환합니다. |
| 쓰기 | 파일에 쓰는 데 사용됩니다. |
| 닫기 | 열려있는 파일을 닫는 데 사용됩니다. |
| fgets | 파일을 한 줄씩 읽는 데 사용됩니다. |
| 복사 | 기존 파일을 복사하는 데 사용됩니다. |
| 풀리다 | 기존 파일을 삭제하는 데 사용됩니다. |
| file_get_contents | 파일의 내용을 문자열로 반환하는 데 사용됩니다. |


