fseek 함수

(PHP 4, PHP 5, PHP 7, PHP 8)

fseek — 파일 포인터를 찾습니다.


설명

fseek(resource $stream, int $offset, int $whence = SEEK_SET): int

stream에서 참조하는 파일의 파일 위치 표시기를 설정합니다. 파일 시작 부분부터 바이트 단위로 측정되는 새 위치는 whence로 지정된 위치에 offset을 추가하여 얻습니다.

일반적으로 파일 끝을 지나서 탐색할 수 있습니다. 그런 다음 데이터가 기록되면 파일 끝과 검색된 위치 사이의 기록되지 않은 영역에서 값이 0인 바이트를 읽습니다. 그러나 특정 스트림은 특히 기본 고정 크기 저장소가 있는 경우 이 동작을 지원하지 않을 수 있습니다.


매개변수

stream
일반적으로 fopen()을 사용하여 생성되는 파일 시스템 포인터 리소스입니다.
offset
오프셋.

파일 끝 이전 위치로 이동하려면 offset에 음수 값을 전달하고 whenceSEEK_END로 설정해야 합니다.

whence
whence 값은 다음과 같습니다.
  • SEEK_SET - offset 바이트와 같은 위치를 설정합니다.
  • SEEK_CUR - 현재 위치에 offset을 더한 위치로 설정합니다.
  • SEEK_END - 위치를 파일 끝과 offset으로 설정합니다.

반환 값

성공하면 0을 반환합니다. 그렇지 않으면 -1을 반환합니다.


Examples

예제 #1 fseek() 예제

                  
<?php

$fp = fopen('somefile.txt', 'r');

// read some data
$data = fgets($fp, 4096);

// move back to the beginning of the file
// same as rewind($fp);
fseek($fp, 0);

?>
                  
                

노트

메모: 추가(a 또는 a+) 모드에서 파일을 연 경우 파일 위치에 관계없이 파일에 쓰는 모든 데이터가 항상 추가되고 fseek() 호출 결과는 정의되지 않습니다.

메모: 모든 스트림이 검색을 지원하는 것은 아닙니다. 탐색을 지원하지 않는 사람들의 경우, 현재 위치에서 전방 탐색은 데이터를 읽고 폐기함으로써 수행됩니다. 다른 형태의 추구는 실패할 것입니다.


기타

  • ftell() - 파일 읽기/쓰기 포인터의 현재 위치를 반환
  • rewind() - 파일 포인터 위치 되감기