[PHP] #33 PHP 파일 함수 정리: 파일 읽기, 쓰기, 삭제까지 완벽 마스터!

2025. 9. 6. 17:00·Programming/PHP
반응형

 

 

안녕하세요 토스트데브입니다.
이번 글에서는 PHP에서 파일을 다루는 주요 함수들을 소개합니다.
파일을 읽거나 쓰고, 삭제하는 작업은 간단한 것 같지만 상황에 따라 다양한 옵션과 주의점이 있습니다.
실제 예제와 함께 정확하게 익혀두세요!

 

 

📂 1. 파일 열기 – fopen()

$fp = fopen("sample.txt", "r");

 

모드 설명
r 읽기 전용 (파일 존재해야 함)
w 쓰기 전용 (파일 없으면 생성, 있으면 내용 삭제)
a 추가 전용 (파일 끝에 추가)
r+ 읽기/쓰기
w+ 읽기/쓰기 (기존 내용 삭제)
a+ 읽기/쓰기 (추가 모드)

 

 

📖 2. 파일 읽기

✅ fread() – 지정한 바이트 수만큼 읽기

$fp = fopen("sample.txt", "r");
$content = fread($fp, filesize("sample.txt"));
fclose($fp);

echo $content;

 

✅ file_get_contents() – 전체 파일 내용 간단히 읽기

$content = file_get_contents("sample.txt");
echo $content;

📌 가장 간단하고 자주 쓰이는 파일 읽기 방법

 

 

✍️ 3. 파일 쓰기

✅ fwrite() – 파일에 내용 쓰기

$fp = fopen("sample.txt", "w");
fwrite($fp, "안녕하세요, PHP 파일 함수입니다!");
fclose($fp);

 

✅ file_put_contents() – 간단히 파일 저장

file_put_contents("sample.txt", "이 내용이 저장됩니다.");

📌 파일이 없으면 자동 생성, 있으면 덮어씀
📌 FILE_APPEND 플래그로 내용 추가도 가능

file_put_contents("sample.txt", "추가 내용", FILE_APPEND);

 

 

🧽 4. 파일 삭제 – unlink()

if (file_exists("sample.txt")) {
    unlink("sample.txt");
    echo "파일 삭제 완료!";
}

 

 

🧪 보조 함수들

함수명 설명
file_exists() 파일이 존재하는지 확인
is_readable() 읽기 가능한 파일인지 확인
is_writable() 쓰기 가능한 파일인지 확인
filesize() 파일의 크기를 바이트 단위로 반환
fclose() 열어둔 파일 포인터 닫기

 

 

💡 실전 팁

  • 파일 경로는 절대 경로/상대 경로를 정확히 확인할 것
  • file_put_contents()는 짧고 강력하지만, 동시에 여러 사용자가 접근하는 환경에서는 충돌 가능 → fopen() + flock() 조합이 더 안전
  • 대용량 파일을 읽을 때는 fread() + 반복문으로 조금씩 읽는 방식이 효율적

 

 

✅ 마무리

이번 글에서는 PHP에서 파일을 열고, 읽고, 쓰고, 삭제하는 함수들을 정리해봤습니다.
웹 개발에서는 로그 저장, 파일 기반 캐시, 게시판 글쓰기 등 파일 처리가 필요한 기능이 매우 많기 때문에 기초적인 파일 함수들을 반드시 숙지해두셔야 합니다.

 

#PHP, #파일함수, #fopen, #fread, #fwrite, #file_get_contents, #file_put_contents, #unlink, #파일삭제, #웹개발, #PHP기초

반응형
저작자표시 비영리 (새창열림)

'Programming > PHP' 카테고리의 다른 글

[PHP] #35 PHP 변수 상태 확인 및 디버깅 함수 정리: isset, empty, var_dump까지  (2) 2025.09.08
[PHP] #34 PHP 파일 업로드, 권한 설정, 복사/이동 완벽 정리  (0) 2025.09.07
[PHP] #32 PHP DateTime 클래스 완전 정복: 날짜 계산, 차이, 포맷 변경까지  (4) 2025.09.05
[PHP] #31 PHP 날짜/시간 함수 완벽 정리: date, time, strtotime, mktime 총정리  (2) 2025.09.04
[PHP] #30 PHP 수학함수, PHP 수학 함수 심화편: 삼각함수부터 로그, 지수 함수까지  (6) 2025.09.03
'Programming/PHP' 카테고리의 다른 글
  • [PHP] #35 PHP 변수 상태 확인 및 디버깅 함수 정리: isset, empty, var_dump까지
  • [PHP] #34 PHP 파일 업로드, 권한 설정, 복사/이동 완벽 정리
  • [PHP] #32 PHP DateTime 클래스 완전 정복: 날짜 계산, 차이, 포맷 변경까지
  • [PHP] #31 PHP 날짜/시간 함수 완벽 정리: date, time, strtotime, mktime 총정리
TOASTDEV
TOASTDEV
인스턴트 코딩 #토스트데브 #토스트뎁 #코딩공부 #개발입문
  • TOASTDEV
    토스트데브
    TOASTDEV
    • 분류 전체보기 (155)
      • 알쓸신잡 (47)
        • 코딩에 대하여 (13)
        • 컴퓨터에 대하여 (12)
        • IT 국내외 소식 (22)
      • Web Front (28)
        • HTML (10)
        • CSS (14)
        • JavaScript (4)
      • Programming (35)
        • PHP (35)
      • Database (12)
        • SQL (12)
        • MySQL (0)
      • Server (24)
        • Linux (24)
      • Review (9)
        • Overseas Trip (0)
        • Domestic Travel (0)
        • Product Use Review (4)
        • Football Sports Review (5)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • Youtube Toastdev
    • Naver Blog
  • 공지사항

    • [유튜브] 유튜브 영상 업로드 안내
  • 인기 글

  • 태그

    코딩입문
    php기초
    php
    데이터베이스
    css기초
    웹개발
    PHP문자열
    서버관리
    리눅스기초
    서버보안
    서버입문
    웹개발기초
    프론트엔드
    웹프로그래밍
    php문법
    php입문
    HTML
    컴퓨터기초
    ubuntuserver
    SQL강의
    sql
    SQL기초
    웹디자인기초
    리눅스보안
    SQL문법
    프론트엔드기초
    데이터분석
    웹개발입문
    html기초
    ubuntu서버
  • 최근 댓글

  • 최근 글

  • 전체
    오늘
    어제
  • 반응형
  • hELLO· Designed By정상우.v4.10.3
TOASTDEV
[PHP] #33 PHP 파일 함수 정리: 파일 읽기, 쓰기, 삭제까지 완벽 마스터!
상단으로

티스토리툴바