PHP | rewind 函数

Lasted 2021-01-20 09:26:43

rewind 函数倒回文件指针的位置。

rewind() 函数将 handle 的文件位置指针设为文件流的开头。

函数定义

rewind ( resource $handle ) : bool
// 源文件位于:ext/standard/file.c
# 函数定义

PHPAPI PHP_FUNCTION(rewind)
{
  zval *res;
  php_stream *stream;

  ZEND_PARSE_PARAMETERS_START(1, 1)
    Z_PARAM_RESOURCE(res)
  ZEND_PARSE_PARAMETERS_END();

  PHP_STREAM_TO_ZVAL(stream, res);

  if (-1 == php_stream_rewind(stream)) {
    RETURN_FALSE;
  }
  RETURN_TRUE;
}

参数

  • checkhandle - 文件流。

返回值

  • checkbool - 成功时返回 true,失败时返回 false。

示例1: - 使用 rewind() 函数倒回文件指针的位置。

<?php
/**
 * PHP rewind() 函数倒回文件指针的位置。
 *
 * @since Version 1.0.0
 * @filesource
 */

// 打开文件
$filename = "foo.txt";
$handle = fopen($filename, "r+");

// 写入数据
fwrite($handle, "Really long string");

// 倒回文件指针
rewind($handle);

// 写入数据
fwrite($handle, "Foooo");

// 读取文件,需要移动指针到开始位置
fflush($handle);
rewind($handle);
echo fread($handle, filesize($filename));

// 关闭文件
fclose($handle);
Fooooy long string