我想把数据从一个文本文件中取出,然后从中间删除一些确定的东西,然后重复同样的操作

问题描述 投票:0回答:1

我有一个文本文件,在那个文本文件中有一些数据是这样的

John || Sekram
JOHN || Doe
Lorem || Ipsum

现在我的问题是我不知道从哪里开始,但我想将这些数据放入不同的变量中并忽略

||
,然后每次刷新网页时删除该行。

我写了这段 php 代码,但它提取了整行

  $file = "data.txt";
$f = fopen($file, 'r');
$line = fgets($f);
//echo $line;
fclose($f);


$contents = file($file, FILE_IGNORE_NEW_LINES);
$first_line = array_shift($contents);
file_put_contents($file, implode("\r\n", $contents));

现在我的代码做的是,它提取整行然后擦除它。我希望将其存储在两个不同的变量中并删除中间的

||
然后擦除该行。

此数据太大,无法手动执行。任何帮助都会得到帮助。

php preg-match
1个回答
0
投票

要在两个单独的变量中提取数据并在每次刷新页面时删除该行,您可以使用以下 PHP 代码:

$file = "data.txt";
$f = fopen($file, 'r');
$line = fgets($f);
fclose($f);

// Extract the data in two separate variables
$data = explode("||", $line);
$name1 = trim($data[0]);
$name2 = trim($data[1]);

// Remove the line from the file
$contents = file($file, FILE_IGNORE_NEW_LINES);
$first_line = array_shift($contents);
file_put_contents($file, implode("\r\n", $contents));

此代码使用 fgets() 读取文本文件的第一行,然后使用 explode() 函数将数据提取到两个单独的变量中。 trim() 函数用于删除名称周围的任何空格。

然后,代码使用 file() 函数从文件中删除第一行,将文件读入数组,使用 array_shift() 函数删除第一个元素(第一行),使用 file_put_contents() 函数写入剩余行回到文件。

您可以根据需要在 PHP 脚本中使用 $name1 和 $name2 变量。

© www.soinside.com 2019 - 2024. All rights reserved.