微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php fgetc()和fgets()间有什么区别

区别:1、fgetc()用于从打开的文件中读取一个字符,并返回一个包含有一个字符的字符串;而fgets()用于从打开的文件中读取一行数据,并返回指定长度的字符串。2、fgetc()函数只接受一个参数,而fgets()函数可接受两个参数。

本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑

PHP中,fgetc()和fgets()都可以从文件中读取数据,但也有区别,下面介绍一下。

PHP fgetc()和fgets()的区别

1、功能区别

fgetc():从打开的文件中读取一个字符

fgets():从打开的文件中读取一行数据

2、语法区别

fgetc():只接受一个参数

fgetc($handle)
  • 参数 $handle 是被打开的文件

fgets():可接受两个参数

fgets($handle[,$length])
  • 参数 $handle 是被打开的文件

  • 参数 $length 为可选参数,用来设置读取的数据长度。

3、返回值区别

fgetc() 函数可以返回一个包含有一个字符的字符串,该字符是从 $handle 指向的文件中得到。当碰到 EOF 时返回 FALSE。

fgets()函数可以从指定文件中读取一行并返回指定长度的字符串。在遇到换行符、EOF 或者读取了 $length-1 个字节后停止。如果忽略 $length 参数,则认读取 1k(1024字节)长度。

扩展知识:

我们有一个名为“test.txt”的文本文件,里面的内容为:

<?PHP
header(Content-Type: text/html;charset=utf-8);    //设置字符编码
$handle = fopen('./test.txt', 'r');                 //打开文件
if (!$handle) {                                     //判断文件是否打开成功
    echo '文件打开失败!';
}
while (false !== ($char = fgetc($handle))) {        //循环读取文件内容
    echo $char;
}
fclose($handle);                                    //关闭文件
?>

<?PHP
header(Content-Type: text/html;charset=utf-8);    //设置字符编码
$handle = fopen('./test.txt', 'r');                 //打开文件
if (!$handle) {                                     //判断文件是否打开成功
    echo '文件打开失败!';
}
while (false !== ($char = fgets($handle,1024))) {        //循环读取文件内容
    echo $char.<br>;
}
fclose($handle);                                    //关闭文件
?>

推荐学习:《PHP教程

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐