메뉴 건너뛰기

프로그램언어

2015.04.14 19:10

fopen 파일 열기

조회 수 20297 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

FILE *fopen(const char *filename, const char *mode);

// fopen() 함수의 파일 경로, 파일을 열때 모드 옵션

// mode 옵션 의미


r : 읽기 전용으로 열기


w : 쓰기용으로 파일 만들기, 같은 이름이 있다면 덮어쓰기


a : 같은 이름의 파일이 이미 있다면, 그 파일 끝에 추가하여 쓰기, 파일이 없다면 쓰기용으로 파일 생성


r+ : 이미 있는 파일을, 읽기/쓰기용으로 열어 업데이트


w+ : 일기/쓰기용으로 파일 만들기, 같은 이름의 파일이 존재한다면 덮어쓰기


a+ : 파일을 열어서, 끝부분에 추가하기. 파일이 없다면 새로 생성한다.


t : 텍스트 모드로 열기


b : 이진 파일 모드로 열기



위의 모드는 조합이 가능하다.


rb : 바이너리 모드, 읽기 전용 열기


wb : 바이너리 모드, 쓰기용으로 열기




실제 파일을 열고 나면 파일 안의 데이터를 읽어 와야 되는데 그럴 때 사용하는 함수로는 3개가 있다.

$data = fgets($fp, 1000);
fgets() 함수는 파일에서 한 줄씩 읽는다. 이 경우 파일의 줄바꿈 문자나 EOF를 만나지 않는다면 999바이트를 읽을 때까지 진행한다.

$data = fgetss($fp, 1000, "특정 태그");
fgetss() 함수는 읽어들인 문자열에서 PHP와 HTML 태그를 모두 제거한다. 특정 태그를 남겨두려면 적어준다.

$data = fgetcsv($fp, 1000, "delimiter");
fgetcsv() 함수는 파일에서 읽은 문자열을 구분 문자로 나누어서 배열에 저장한다. 가운데는 length 파라미터인데, 이 값은 읽으려는 한 줄의 길이보다 좀 더 길어야 한다.

$data = fgetc($fp);
fgetc() 함수는 파일에서 한번에 한 문자씩 읽어들인다.



<?php

$fp=fopen('./data.txt',"r");

while(!feof($fp)) {   // 파일의 끝인지 아닌지 확인 (false 일 경우 끝)

echo fgets($fp,1000)."<br/>";

}

fclose($fp);

?>


List of Articles
번호 제목 날짜 조회 수
100 문자 숫자 중복 데이타 값 삭제 array_unique 함수 2019.01.16 1437
99 문자,숫자 랜덤 출력 2021.03.26 407
98 문자열 나누기 2015.04.14 19681
97 문자열 뒤집기 (strrev) 2016.12.23 18950
96 문자열 붙이기 2015.04.14 19353
95 문자열 찾기 (strstr) 2016.12.23 18907
94 문자열 추출하기 (substr) 2016.12.23 18867
93 문자열 치환 (str_replace) 2016.12.23 18812
92 문자열 치환하기 2015.04.14 20493
91 문자열 함수 모음 2021.03.26 318
90 문자열에서 태그를 제거 (strip_tags) 2016.12.23 17522
89 문자열의 태그를 그대로 출력 (htmlspecialchars) 2016.12.23 18069
88 방금 INSERT 했던 SQL 문의 PK(primary key)값 가져오기 2018.07.04 5355
87 배열 더하기 (+ 를 이용한 배열 합치기 ) 2021.03.26 454
86 배열 연산자 []= 에 대해서 2021.03.26 231
85 배열을 테이블로 만들기 2019.01.08 1627
84 복권 번호 뽑기 2021.03.26 344
83 비교연산자 ( === 에 관해서 ) 2021.03.25 307
82 사업자등록번호 유효성 체크 2020.08.24 475
81 사업자번호로 사업자 종류알기 2019.01.08 1222
Board Pagination Prev 1 ... 8 9 10 11 12 13 14 15 16 17 Next
/ 17

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved