찾다

 >  Q&A  >  본문

echo fseek($fp,10);왜 출력이 0이 되나요?

echo fseek($fp,10);

益伦益伦2555일 전1696

모든 응답(5)나는 대답할 것이다

  • 卿立平

    卿立平2018-01-28 21:30:33

    php7 매뉴얼에서 확인하실 수 있습니다. fseek 함수는 포인터를 지정된 바이트만큼 뒤로 이동시키는 함수입니다. 그러나 이 포인터 이동에는 몇 가지 요구 사항이 있으며 세 가지 결과가 있습니다. 1. 지정된 바이트를 설정 위치(파일 시작)에서 뒤로 추가합니다. 2. 지정된 바이트를 파일의 설정된 위치(시작)에 추가합니다. 3. 설정된 위치(파일 포인터의 미리 결정된 위치)는 추가할 바이트 수와 같습니다.
    이 함수의 반환 값은 증가에 성공하면 0이고, 그렇지 않으면 -1이 반환됩니다.
    이때는 fseek($fp,10)을 사용합니다. 이때 포인터가 파일의 처음으로 돌아온 다음 10바이트 뒤로 이동한다는 점을 이해해야 합니다.
    테스트해 보겠습니다. "mylove.txt"라는 파일에 다음과 같은 내용이 있습니다. 인민생활 향상을 보장하고, 인민의 이익감, 행복감, 안전의식을 지속적으로 제고하며, 전 인민의 공동번영을 지속적으로 촉진한다." 시진핑 국가주석은 2017년 10월 25일 중국 상무위원회에서 중국과 외국 기자들을 만났다. 19차 중국공산당 중앙위원회 정치국의 연설은 매우 감동적이었습니다. ”

    실행 프로그램:

    <?php

    $fp = fopen('D:phpStudyPHPTutorialWWWdemomylove.txt' , 'r+');

    // 10자 읽기

    echo fread($fp, 10 ); //fread를 통해 파일을 읽을 때 파일 포인터가 지정된 길이의 문자열 읽기를 마치면 포인터는 지정된 길이의 위치에 유지됩니다.

    //포인터가 처음으로 다시 설정됩니다

    rewind($fp );

    echo '<br/>';

    echo fread($fp,10); // 이때 읽은 후 포인터가 10번째 바이트에서 멈춥니다. 출력 내용은 "We must Remember"입니다.

    .echo '<br/>';

    echo fseek($fp,20); //파일 포인터가 파일 헤더에서 20자 뒤로 이동하면 작업이 성공했음을 의미하므로 반환 값이 반환됩니다. 포인터 위치는 20번째 문자 위치에 있어야 합니다

    echo '<br/>';

    echo fread($fp,10);// 이때 20번째 바이트 문자에 있어야 합니다. 그런 다음 10바이트 길이를 읽으면 "Longing for Life"가 출력됩니다.

    echo '<br/>';

    ?>

    프로그램의 출력 결과는 다음과 같습니다.

    us
    0
    삶에 대한 그리움

    을 염두에 두어야 합니다. 이 경우와 결합하여 fseek() 함수를 더 잘 이해할 수 있도록 매뉴얼을 확인하는 것이 가장 좋습니다.

    회신하다
    2
  • 卿立平

    卿立平2018-01-28 21:18:53

    php7 매뉴얼에서 확인하실 수 있습니다. fseek 함수는 포인터를 지정된 바이트만큼 뒤로 이동시키는 함수입니다. 그러나 이 포인터 이동에는 몇 가지 요구 사항이 있으며 세 가지 결과가 있습니다. 1. 설정된 위치의 파일 끝에 지정된 바이트를 추가합니다. 2. 설정된 위치의 파일 끝에 지정된 바이트를 추가합니다. . 설정 위치는 추가할 바이트 수와 같습니다.
    이 함수의 반환 값은 증가에 성공하면 0이고, 그렇지 않으면 -1이 반환됩니다.

    회신하다
    0
  • 小崔

    小崔2017-12-05 16:32:47

    fseek() 함수는 읽기에 성공하면 0을 반환하고, 그렇지 않으면 -1을 반환합니다. 이 경우 fseek()는 데이터를 읽습니다

    회신하다
    0
  • 小崔

    小崔2017-12-03 16:44:22

    같은 질문

    회신하다
    0
  • myfey

    myfey2017-11-27 13:59:22

    10번째 파일 위치는 0

    이어야 합니다.

    회신하다
    0
  • 취소회신하다