Добрый день! Поделитесь скриптом, чтоб соединить 2 текст.файла, вида - 1 файл майл:хеш и 2 файл хеш:пароль. Чтоб получилось в результате майл:хеш:пароль, т.е. для определенного майла, можно было сопоставить пароль, для одинаковых хешей. Спасибо.
PHP: <?php set_time_limit( 0 ); error_reporting( E_ALL ); ini_set( 'display_errors', 'on' ); $f1 = file( '1.txt' ); $f2 = file( '2.txt' ); $results = array(); foreach ( $f2 as $v ) { list( $hash, $pass ) = explode( ':', $v ); $results[ trim( $hash ) ][ 'pass' ] = trim( $pass ); } $fp = fopen( 'results.txt', 'w+' ); foreach ( $f1 as $v ) { list( $mail, $hash ) = explode( ':', $v ); if ( array_key_exists( trim( $hash ), $results ) ) { fwrite( $fp, trim( $mail ) . ':' . trim( $hash ) . ':' . $results[ trim( $hash ) ][ 'pass' ] . "\r\n" ); } } fclose( $fp ); echo 'All done'; ?> Входные данные: файлы 1.txt и 2.txt На выходе: results.txt
как я понимаю, что ищет только одно вхождение, а как если там несколько раз встречается один и тот же хеш для разный майлов. Как сделать так чтоб, искал по всей базе до конца, а не до первого совпадения. Можно подправить. Спасибо.