Есть 2 файла текстовых (1,2) В 1 данные типа: aaa111@site.ru aaa222@site.ru aaa333@site.ru aaa444@site.ru aaa555@site.ru В 2 данные: aaa111@domen tra ta ta aaa222@domen tra ta ta aaa333@domen tra ta ta aaa444@domen tra ta ta aaa555@domen tra ta ta На выходе нужно: aaa111@site.ru aaa111@domen tra ta ta aaa222@site.ru aaa222@domen tra ta ta aaa333@site.ru aaa333@domen tra ta ta aaa444@site.ru aaa444@domen tra ta ta aaa555@site.ru aaa555@domen tra ta ta Суть, что бы соединил по совпадению до @ (проанализировав 1 и 2) Данные строки будут не по порядку! (в 1 и в 2 файле) Строк примерно 1к. Купил бы.
PHP: <?php $f1 = "1.txt";// файл 1 $f2 = "2.txt";// файл 2 $f3 = "3.txt";// выходной файл $fp = fopen($f3, "wb"); foreach (array_map("trim", file($f1)) as $line) { foreach (array_map("trim", file($f2)) as $line2) { if (strchr($line2, substr($line, 0, strpos($line, "@")))) { fwrite($fp, $line." ".$line2."\r\n"); } } } fclose($fp); Так? Или неправильно понял?
PHP: <?php $site = file('file1.txt'); $domen = file('file2.txt'); foreach($site as $s){ $tmp = explode('@', $s); $s_array[$tmp[0]] = $s; } foreach($domen as $d){ $tmp = explode('@', $d); $d_array[$tmp[0]] = $d; } foreach($s as $key=>$value){ file_put_contents('final.txt', $value.' '.$d_array[$key]."\n", FILE_APPEND); } гавнокод, но вроде рабочий