我一直在尝试通过分割带有子字符串的行而不是使用唯一的数组,但我无法使其正常工作。我们的想法是,如果文件中的相同行数较少,请保留较高数字的行。
TEXTFILE:
wood tiger 22324 Squirrel
john apple 24574 Squirrel
peter snuggle 21234 Squirrel
james coolest 20108 Squirrel
james coolest 20134 Squirrel
需要输出:
wood tiger 22324 Squirrel
john apple 24574 Squirrel
peter snuggle 21234 Squirrel
james coolest 20134 Squirrel
所以,基本上它必须保持编号最高的项目,如果它在同一行(数字越新,线条越新)。
到目前为止我尝试过的事情:
$file_handle = fopen("file.txt", "rb" , FILE_SKIP_EMPTY_LINES);
while (!feof($file_handle) ) {
$line_of_text = fgets($file_handle);
if ($line_of_text[0] === ' ') continue;
if ($line_of_text[0] === ' ') continue;
$part1 = substr("$line_of_text", ..., ...);
$part2 = substr("$line_of_text", ..., ...);
$part3 = substr("$line_of_text", ..., ...);
$part1 = explode(' ', $part1);
$part1 = array_unique($part1);
$part1 = implode(' ', $part1);
var_dump ($part1);
}
file_put_contents('outputfile.txt', implode(PHP_EOL, $lines));
?>