php 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”的文本文件,里面的内容为:
-
使用fgetc()逐个字符读取文件
<?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); //关闭文件 ?>
-
使用fgets()逐行读取文件
<?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); //关闭文件 ?>
版权声明:
作者:后浪云
链接:https://www.idc.net/help/7909/
文章版权归作者所有,未经允许请勿转载。
THE END