fgetc()

1. 定义

从文件指针处读取一个字符(英文字符),同时文件指针向后移动一位,如果遇到文件末尾则返回FALSE。

2. 语法

fgetc ( resource $handle ) : string

3. 参数说明

参数 可选性 数据类型 描述
$handle 必需 资源类型 文件句柄,通过fopen()函数打开的文件资源

4. 示例

<?php

// fgetc()
// 从文件指针处读取一个字符(英文字符),同时文件指针向后移动一位,如果遇到文件末尾则返回FALSE

// 创建一个空文件并在其中写入内容
file_put_contents(__DIR__.'/test.txt', file_get_contents('https://loripsum.net/api/3/short/link/plaintext'));

// 打开刚才的文件
$handle = fopen(__DIR__.'/test.txt', 'r+');
if ($handle) {
    $str = fgetc($handle);
    // echo $str;// 只能正确输出英文字符,中文字符被看作为空字符串
    var_dump($str);// 输出:string(1) "L"
} else {
    echo '打开文件失败!';
}

// 输出从文件指针开始的地方到文件末尾的所有字符:此时文件指针在第二个字符
while (!feof($handle)) {
    echo fgetc($handle);
    // var_dump(fgetc($handle));
}

fclose($handle);

5. 延展阅读

  • fread():读取指定长度的通过fopen()函数打开的文件内容
  • fopen():打开一个指定的文件或 URL。 如果 PHP 的allow_url_fopen未被打开,那么打开一个 URL 时fopen()调用失败
  • popen():用于打开一个指向进程的管道,只允许单向的读或者写
  • fgets():从文件指针处读取一行字符,直到遇到换行符、文件末尾或者函数参数列表中指定的长度($length - 1)后停止