У меня есть текстовый файл, содержащий эти данные:
947 11106620030 Ancho Khoren MKK6203 Введение Занят 2,00
948 balblalbllablab
949 balblalbllablab
950 balblalbllablab
951 11106620031 Adagasa Goo MKB6201 Экономика Внутри 3,00
952 balblalbllablab
953 balblalbllablab
954 balblalbllablab
962 11106620032 Fumiou Moon MKB6201 Книга мира 3,00
Однако мне нужно удалить все строки, содержащие «balblabllablab», и просто оставить определенные строки данных tge, как показано ниже:
947 11106620030 Ancho Khoren MKK6203 Введение Занят 2,00
951 11106620031 Adagasa Goo MKB6201
Экономика Внутри 3,00
962 11106620032 Fumiou Moon MKB6201 Книга мира 3,00
Я знаю, как открывать и писать в файл, а также закрывать файл, но я не знаю, как удалить строки / содержимое с помощью php. Как удалить ненужные строки из файла с помощью php?
Используйте функцию 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);
Содержимое в файле нечеткое, что именно вы хотите взять из текстового файла?
Обычно, используя регулярное выражение, вы можете получить требуемый контент, только если у него есть общий шаблон.
Не могли бы вы разместить полный файл и объяснить, что именно вы хотите от него отфильтровать.
обратитесь: http://php.net/manual/en/function.preg-match.php