php逐行读取文件,逐行修改文件,删除指定行

php逐行读取文件,逐行修改文件,删除指定行,第1张

修改和删除指定行,我们一般用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 =  ) : array

array_rand

从数组中随机取出一个或多个随机键

array_rand ( array $array , int $num = 1 ) : int|string|array

implode

将一个一维数组的值转化为字符串

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读取文本文件内容等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/9434365.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存