PHP/PHP

PHP 파일 입출력 함수

본클라쓰 2009. 9. 14. 16:20

파일 스트림 열기 함수

 

fopen (String filename, String mode[bool])

 

 파일을 읽거나 쓰기를 할 경우 파일 경로와 스트림을 연결시키는 함수입니다. 전달인자인 mode값은 r은 읽기만, r+ = 읽기와 쓰기만, w은 쓰기만, w+는 읽기와 쓰기만 가능한 mode입니다. 만약 파일이 없는 경우 0을 리턴합니다.

 

$fileName = "경로";
$handle = fopen($filename, "r"); // 파일열기
$contents = fread($handle, filesize($fileName)); // 파일의 전체 내용 읽기
fclose($handle); // 파일 닫기

 

[버퍼를 이용하는 방법] 

while( !feof($handle) ) {
    $buffer = fgets($handle, 4096); // 엔터가 있는 곳까지 최대 4096byte를 읽어옵니다.
    echo $buffer;  // 읽은 라인을 출력합니다.
}

 

 [ 참고 사이트 ] http://www.w3schools.com/php/

 

 

 

 

파일 스트림 닫기 함수

fclose( $file )

스트림을 연결한 파일의 스트림을 닫는 함수입니다.

 

 

 

파일 내용 읽기 함수 

fread(int filePointer, int length)

첫 번째 인자로 전달한 파일 포인터가 가리키는 파일의 실제 내용을 지정한 크기만큼만 읽어 들이는 함수입니다. 두 번째 인자는 파일에서 몇 바이트를 읽어 들일 것인지 그 읽어들일 크기를 byte 단위의 정소로 전달합니다.  

 

 

 

파일 내용 읽기 함수(한 줄씩)

fgets(int filePointer, int length)

파일의 내용을 한 줄씩 줄 단위로 읽어들일 때 매우 유용한 함수로 파일 포인터가 가리키는 파일 내 현재 위치에서 length-1 바이트 만큼 읽어들이고 읽어들인 문자열을 반환합니다. 그러나 지정한 크기의 바이트수만큼 읽어들이기 전에 개행 문자를 만나거나 파일의 끝에 다다르면 읽기를 중단합니다.

 

$file = fopen("welcome.txt", "r") or exit("Unable to open file!");


//Output a line of the file until the end is reached
while( !feof($file) ) {
    echo fgets($file). "<br />";
}


fclose($file);

 

 


파일 내용 읽기(한자씩)

fgetc(int filePointer)

파일을 연결한 후 파일의 내용을 한 문자씩 읽어 드릴 때 사용하는 함수입니다.

 

$file=fopen("welcome.txt","r") or exit("Unable to open file!");


while ( !feof($file) ) {
    echo fgetc($file);
}


fclose($file);

 

 

 

파일에 내용 쓰기 함수

fwrite(int filepointer, string string [, int length])

파일 포인터가 가리키는 파일에 문자열을 length byte 만큼 쓰는 함수입니다. length 를 지정해 주지 않으면 문자열 전부를 파일에 씁니다. 

 

 

 

파일의 끝을 체크하는 함수

feof(int filePointer)

파일의 끝(EOF) 에 도달했거나 에러가 발생했을 경우 true를, 그렇지 않을 경우  false를 반환합니다.  

if ( feof($file) )  { echo "End of file"; }

 


 

퍼미션 변경 함수

boolean chmod(string fileName, int mode)

파일의 퍼미션을 변경하는 함수입니다. 리눅스 서버에서 file 퍼미션을 변경할 때 사용하는 함수로 윈도우에서는 적용되지 않습니다. mode값은 퍼미션 종류를 나타냅니다. 퍼미션 변경이 성공하면 true, 실패할 경우 false를 반환합니다. mode 값은 '755', 'u+rwx', 'go+rw'등의 값을 사용할 수 있습니다.

 

 

파일 이동 함수

move_uploaded_file(string fileName, string destination)

 업로드 된 파일을 다른 곳으로 이동할 때 사요하는 함수입니다. 이 함수는 fileName에 의해서 지정된 파일이 php의 http post 파일 업로드 메카니즘을 통해 업로드 된 파일인지 확인합니다. 파일이 유효한 것일 때 destination 으로 파일이 이동됩니다.

 

 

 

이미지 사이즈 구하는 함수

array getImageSize(string fileName, array[])

gif 또는 jpg, png 이미지의 크기를 구합니다. 이미지 파일의 크기와 파일 타입에 따른 폭과 너비의 정보, 태그내에 쓸 수 있는 문자열값을 반환합니다. 반환된 배열은 0은 픽셀값으로 이미지의 width값, 1은 픽셀값으로 이미지의 height값, 2는 이미지 타입, 3은 태그안에 사용할 수 있는 정확한 heigth, width, 값을 포함한 문자열입니다.


 

 

우선권 부여 함수

int flock(file point, operation)

flock 은 파일의 동시접속에 의한 패해를 막기 위해 먼저 파일에 접근한 사람에게 우선권을 주는 함수입니다. 여러 사람이 동시에 파일에 접근해 한 사람은 쓰고 한 사람은 지우는 것이 동시에 일어난다면 에러가 날 것이기 때문에 먼저 접근한 사람에게 우선권을 주고 그 사람의 작업이 완료되기 전까지 접근을 금지하는 함수입니다. operation 속성에는 LOCK_SH = 읽기 우선권 , LOCK_EX = 쓰기 우선권 LOCK_IN = 위 2가지 설정을 해제할 때 사용합니다.

 

 

[ 참고 사이트 ] http://www.w3schools.com/php/


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

PHP 날짜 및 시간 관련 함수  (0) 2009.09.14
PHP 데이터베이스 프로그래밍  (0) 2009.09.14
PHP 클래스  (0) 2009.09.14
다른 페이지를 현재 페이지에 포함시키기  (0) 2009.09.14
폼태그를 사용한 데이터 전달  (0) 2009.09.14