Computer >> 컴퓨터 >  >> 프로그래밍 >> PHP

PHP ftell() 함수 완벽 가이드 – 파일 포인터의 현재 위치 확인하기

PHP의 ftell() 함수는 fopen()으로 열려 있는 파일에서 파일 포인터의 현재 위치를 확인할 때 사용합니다. 이 함수는 파일 포인터가 현재 가리키고 있는 위치를 바이트 단위의 정수 값으로 반환하며, 실패할 경우 FALSE를 반환합니다.

문법(Syntax)

ftell(file_pointer)

매개변수(Parameters)

  • file_pointer − fopen() 함수를 통해 생성된 파일 포인터입니다. 필수 항목입니다.

반환값(Return)

ftell() 함수는 파일 포인터의 현재 위치를 정수로 반환합니다. 오류가 발생하면 FALSE를 반환합니다.

예제

<?php
    $file_pointer = fopen("new.txt","r");
    echo ftell($file_pointer);
    fclose($file_pointer);
?>

출력 결과

0

파일을 읽기 모드("r")로 새로 열면 파일 포인터는 기본적으로 파일의 시작 위치인 0에 위치합니다. 따라서 위 예제에서는 0이 출력됩니다.

이번에는 fseek() 함수를 사용해 파일 포인터의 현재 위치를 변경한 뒤, 그 위치를 확인해 보겠습니다.

예제

<?php
    $file_pointer = fopen("new.txt","r");
    // 현재 위치 변경
    fseek($file_pointer,"10");
    // 현재 위치 출력
    echo ftell($file_pointer);
    fclose($file_pointer);
?>

fseek() 함수로 파일 포인터를 10번째 바이트 위치로 이동시킨 후 ftell()을 호출하면 다음과 같이 변경된 현재 위치가 반환됩니다.

출력 결과

10

참고 사항

  • ftell()은 주로 fseek(), rewind()와 함께 사용되어 파일 내 임의의 위치를 탐색하거나 현재 읽기/쓰기 지점을 추적할 때 유용합니다.

  • 파일 모드가 "a"(추가 모드)인 경우, 쓰기 작업 전에는 파일 끝에 자동으로 이동하므로 ftell() 결과가 예상과 다를 수 있습니다.

  • 함수 사용 후에는 fclose()로 반드시 파일을 닫아 리소스 누수를 방지하는 것이 좋습니다.