我有一个文本文件包含以下数据:
947 11106620030 Ancho Khoren MKK6203简介忙2,00 948双唇裂 949唇裂 950双唇裂 951 11106620031阿加萨果果MKB6201经济内部3,00 952唇裂 953唇裂 954双唇裂 962 11106620032浮雕月亮MKB6201世界之书3,00
但是,我需要删除包含“balblabllablab”的所有行,并保留特定的数据行,如下所示:
947 11106620030 Ancho Khoren MKK6203简介忙2,00 951 11106620031阿达加果果MKB6201 经济内部3,00 962 11106620032浮雕月亮MKB6201世界之书3,00
我知道如何打开和写入文件,也知道如何关闭文件,但我不知道如何使用php删除行/内容。如何使用php从文件中删除不必要的行?
发布于 2013-01-10 05:08:18
使用file($path)函数将行放入数组中,然后循环遍历它。
$lines = file($path, FILE_IGNORE_NEW_LINES);
$remove = "balblalbllablab";
foreach($lines as $key => $line)
if(stristr($line, $remove)) unset($lines[$key]);
$data = implode('\n', array_values($lines));
$file = fopen($path);
fwrite($file, $data);
fclose($file);发布于 2013-01-10 04:48:56
文件中的内容不清楚,您到底想从文本文件中获取什么?
通常,您可以使用正则表达式获取所需的内容,但前提是它有一些常见的模式。
你能不能张贴完整的文件内容,并解释你到底想要从中过滤什么。
参考:http://php.net/manual/en/function.preg-match.php
https://stackoverflow.com/questions/14250773
复制相似问题