为了账号安全,请及时绑定邮箱和手机立即绑定

遍历文本文件,修改并编写新文件PHP

遍历文本文件,修改并编写新文件PHP

PHP
Smart猫小萌 2021-05-04 17:20:24
我有一个名为的文件test.txt。它具有多行文本,如下所示:Test Data:Tester 2 Data:Tests 3 Data:我希望有一个PHP脚本来打开该文件,Data:在每一行的单词前去除所有文本并输出结果:Data:Data:Data:到目前为止,我的PHP:$myfile = fopen("test.txt", "r") or die("Unable to open file!");$data = fread($myfile,filesize("test.txt"));// foreach line do this$line = strstr($data,"Data:");//append $line to newtest.txt// endforeachfclose($myfile);
查看完整描述

1 回答

?
吃鸡游戏

TA贡献1829条经验 获得超7个赞

您可以用来file()逐行打开和循环浏览文件。


当您删除之前的所有内容时Data:,根据提供的测试数据(这是我要做的所有事情),我们只需要知道行数即可。因此,我们可以count()用来获取该信息。


然后将新数据构造为变量,最后使用将该变量写入(新)文件file_put_contents()。


使用trim()将删除最后的多余行返回。


$raw = file("./test.txt");

$lineCount = count($raw);

$newFile = null;

do {

    $newFile .= "Data:\r\n";

} while(--$lineCount > 0);

file_put_contents('./test-new.txt',trim($newFile));

编辑:正如“不要惊慌”在下面的评论中所说,您str_repeat()甚至可以使用它来删除do while循环。


这是count()行内移动的版本:


$raw = file("./test.txt");

$newFile = str_repeat("Data:\r\n",count($raw));

file_put_contents('./test-new.txt',trim($newFile));


查看完整回答
反对 回复 2021-05-21
  • 1 回答
  • 0 关注
  • 108 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信