php逐行取出文本数据 php读取一行数据

php读取逐行读取文件

换个1mb的文本它肯定有空格换行,具体操作如下代码:

$file = file(“welcome.txt”);

foreach($file as $line) echo $line.’br /’;

这个更方便, file()直接把文本按行转换成数组

fgets如果没指定第二参数,将直接读取到缓存结束为止, 其实它不以换行来循环的,它的第二参数也是限制每次读取的字符个数而已。

php逐行读取txt文件内容,并把内容放到输入框里,一行内容对应一个输入框

?php

header(“Content-type:text/html; charset=utf-8”);

$f_open = fopen(‘aaa.txt’,’w+’); //打开文件

if(isset($_POST[‘submit’])){ //判断,如果点了提交按钮则执行以下代码

fwrite($f_open,$_POST[‘txt’]); //写入文件,内容为文本域传过来的值

}

?

!DOCTYPE html

html

head

title/title

style type=”text/css”

textarea{

width: 300px;

height: 20px;

}

/style

/head

body

form method=”post” action=”a.php”

textarea name=”txt”

?php

$aaa = readfile(‘aaa.txt’); //读取aaa.txt的内容

?

/textarea

input type=”submit” name=”submit”

/form

/body

/html

?php

fclose($f_open); //关闭文件

?

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);