php怎么一行一行的读取字符串php fgets将txt文件内容一行一行的读出
说明
string fgets ( int $handle [, int $length ])
从 handle 指向的文件中读取一行并返回长度最多为 length - 1 字节的字符串 。碰到换行符(包括在返回值中)、EOF 或者已经读取了 length - 1 字节后停止(看先碰到那一种情况) 。如果没有指定 length,则默认为 1K , 或者说 1024 字节 。
出错时返回 FALSE 。
通常的缺陷:
习惯了 C 语言中fgets() 语法的人应该注意到 EOF 是怎样被返回的 。
文件指针必须是有效的,必须指向由 fopen() 或fsockopen() 成功打开的文件(并还未由 fclose() 关闭) 。
以下是一个简单例子:
?php
$handle = @fopen("/tmp/inputfile.txt", "r");
【php按行读取数据 php逐行读取】if($handle) {
while (!feof($handle)) {
$buffer =fgets($handle, 4096);
echo $buffer;
}
fclose($handle);
}
?
php如何获取txt文本指定行的指定数据?如果直接使用file_get_contents来读取文件,那么在文件很大的时候会很占内容,比如这个文件有1GB的时候 。
这个时候使用传统的文件操作方式就好的多,因为是查找嘛,逐行读取匹配应该也是可以的,下面是我的一个建议 , 不知道是否满足你的要求,可以看下:
//
需要查找的内容
$search
=
'bcd';
//
打开文件
$res
=
fopen('a.txt',
'r');
while
($line
=
fgets($res,
1024))
{
//
根据规则查找
if
(strpos($line,
$search)
===
0)
{
//
根据既定规则取得需要的数据
echo
substr($line,
4,
-1);
//
这里就是你想得到的
break;
}
}
//
关闭文件
fclose($res);
php读取逐行读取文件换个1mb的文本它肯定有空格换行,具体操作如下代码:
$file = file("welcome.txt");
foreach($file as $line) echo $line.'br /';
这个更方便, file()直接把文本按行转换成数组
fgets如果没指定第二参数,将直接读取到缓存结束为止, 其实它不以换行来循环的,它的第二参数也是限制每次读取的字符个数而已 。
关于php按行读取数据和php逐行读取的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。
推荐阅读
- 当年的角色扮演游戏,很早以前的一款角色扮演游戏
- 两个硬盘怎么装双系统,两个硬盘怎么安装双系统
- 下雨用什么光圈拍摄,下雨用什么光圈拍摄好看
- 谷歌gis是什么,谷歌地形数据
- 两个函数调用Python 如何调用两个函数
- 团队竞技直播玩什么手游,玩团队竞技可以上分吗
- 带王字的经营策略游戏名称,带王的游戏名字霸气
- 怎么样显示显卡芯片的温度,如何显示显卡温度
- php怎么往js中传数据 js的值怎么传到php中