修改和删除指定行,我们一般用file将文件内容读取到数组中,根据数字索引比较容易修改,但是你要求用文件指针,这个比较麻烦,不管你用的是filesystem的函数还是spl类函数,都不可避免一个问题,对一个文件流 *** 作,最多替换流中间的某一段内容,不可能实现插入,又不是c语言的链表,
//修改第二行内容$f = fopen('testtxt', 'r+');
$i = 1;
while (!feof($f)) {
if ($i == 2) {
fseek($f, 0, SEEK_CUR);
fwrite($f, 'aad');//这里的修改是替换形式,如果修改后这一行的长度比原来短,那么可以用空格填充到原来长度,这样实现修改,而且不影响后面的内容,但是修改后的比原来长就麻烦了,
break;
}
fgets($f);
$i++;
}
fclose($f);
//删除行同修改行一样,只不过是将原来行替换为同等长度的空格串
$f = fopen('testtxt', 'r+');
$j = 1;
while (!feof($f)) {
if ($j == 2){
$row = fgets($f);
$len = strlen($row);
echo ftell($f)-$len"<br>";
fseek($f, ftell($f)-$len);
fwrite($f, str_pad(' ', $len, ' '));
break;
}
fgets($f);
$j++;
}
fclose($f);
$content = file("testtxt");
$randContent = array_rand($content,5);
echo implode("<br />",$randContent);
第一行使用file把把整个文件读入一个数组中
第二行使用array_rand在数组中随机取出5个元素
第三行将取出的5个数组中间添加<br />标签并打印出来
file
把整个文件读入一个数组中
file ( string $filename , int $flags = 0 , resource $context = ) : arrayarray_rand
从数组中随机取出一个或多个随机键
array_rand ( array $array , int $num = 1 ) : int|string|arrayimplode
将一个一维数组的值转化为字符串
implode ( string $glue , array $pieces ) : string利用PHP读取文本文件的内容,其实很简单,我们只需要掌握函数“file_get_contents();”的使用就可以了。下面,小编将作详细的介绍。
工具/原料
电脑一台
WAMP开发环境
方法/步骤
file_get_content()函数介绍。使用file_get_contents()获取txt文件的内容,具体参数说明如下:
2
具体实例说明。从文本文件tsttxt中读取里面的内容并显示在浏览器中,具体代码和图示如下:
<php
$file = 'tsttxt';
$content = file_get_contents($file); //读取文件中的内容
echo $content;
>
以上就是关于php逐行读取文件,逐行修改文件,删除指定行全部的内容,包括:php逐行读取文件,逐行修改文件,删除指定行、想通过PHP实现读取txt文本每次刷新网页随机获取5行数据并输出、如何使用PHP读取文本文件内容等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)