猿问

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

我有一个名为的文件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

// endforeach


fclose($myfile);


Smart猫小萌
浏览 109回答 1
1回答

吃鸡游戏

您可以用来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));
随时随地看视频慕课网APP
我要回答