Как из txt или csv файла, из строки получить нужные данные и вернуть обратно в строку?
Мне необходимо после загрузки файла на сервер (csv, txt) найти в строке поле Email, провести работу с данным полем и вернуть результат обратно в стоку, сохранив ее целостность.
Т.е. если в строке есть отличные от Email поля их нужно вернуть в строку и сохранить.
Пример файла:
Name, Email, Phone
Вова, [email protected],
Вася, [email protected], 89990001234
Игорь, [email protected],,предприниматель, Москва
Вот что я делаю (построчно):
$fp = @fopen("uploads/file.csv", "r");
if ($fp) {
while (($buffer = fgets($fp, 4096)) !== false) {
echo $buffer;
// выполнить действие над email и сохранить результат
// КАК ЗДЕСЬ ПОЛУЧИТЬ EMAIL ИЗ СТРОКИ И ДАЛЕЕ СОХРАНИТЬ СТРОКУ ЦЕЛИКОМ
//$list = array (
// array('')
//);
//$fp = fopen('file_ed.csv', 'a');
//foreach ($list as $fields) {
// fputcsv($fp, $fields);
//}
//fclose($fp);
}
if (!feof($fp)) {
echo "Ошибка: fgets() неожиданно потерпел неудачу\n";
}
fclose($fp);
}
Смысл в том, чтобы обработать любой файл с любым количеством полей, получить поле Email и вернуть в файл сохранив его изначальную структуру. Чтобы скрипт мог работать даже с самыми замысловатыми файлами и не отдавал ошибок.