Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > отбор слов


Автор: Prokazza 8.7.2010, 12:24
Добры день. У меня есть три текстовых файла со списком мыл, мне нужно брать из файла А мыло проверять наличие его в файле Б и В, если оно есть в файле Б то записывать его в фаил Г, если оно есть в файле В то записывать его в фаил Д а если его нету ни в Б ни в В то записывать его в фаил Е.
Как это реализовать?

Автор: patap 8.7.2010, 12:37
ну ты же, вроде как, довольно четко описал алгоритм, что еще нужно?  smile 

----------
в каком виде мыла записаны в файле (структура файла)?

Автор: skyboy 8.7.2010, 12:39
ну, алгоритм ты и сам написал.
как читать данные из файла знаешь?

Добавлено через 39 секунд
что конкретно не получается?
почему, кстати, не держать эти все мыла в базе данных?

Автор: Prokazza 8.7.2010, 12:43
Я не знаю как это написать. Не нужна ни какая база данных (

Автор: enoff 8.7.2010, 12:49
загнать в переменные все адреса. список A в массив, где каждый элемент - отдельный адрес. Остальные можно тоже в массивы, потом просто добавлять элементы и склеивать в строку и в писать в файл, или просто добавлять к строке.
в цикле брать каждый адрес из списка А и проверять наличие в других списках. in_array(), если все в массивах, strpos(), если все в строке.
Потом все обратно в файлы.

Автор: skyboy 8.7.2010, 12:56
получить массив, где каждый элемент - отдельная строка исходного файла, можно при помощи http://php.net/file
получить общую для двух массивов часть - http://php.net/array_intersect
получить элементы, которые есть в одном массиве, но отсутствуют в другом - http://php.net/array_diff\
записать данные в файл: http://php.net/file_put_contents
надеюсь, файлы у тебя не гигабайтные?

Автор: Prokazza 8.7.2010, 13:17
а можете на примере показать?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)