Сделано так, PHP: <?php $file = file("names.txt"); $search = "test fgd5"; $j = 0; $put = ''; $i = 0; $k = 0; foreach($file as $v){ if(trim($v) == trim($search)) { $k = $i++; $j = $k + 5;//количество строк после искомого слова } $i++; } while($k < $j) { echo $file[$k]; $sdfsdsd = $file[$k]; $sdfsdsd = str_replace(' ', '-', $sdfsdsd); $sdfsdsd = str_replace(' ', '', $sdfsdsd); $sdddfsdsd = $file[$k]; $sdddfsdsd = str_replace(' ', '', $sdddfsdsd); $put .= "<a href=\"/".$sdfsdsd."\">".$sdddfsdsd."</a>\n";//заменил $str_new на $file $k++; } $bl = $search; $bl = str_replace(' ', '-', $bl); file_put_contents($bl.'.txt', $put); ?> Единственный минус, но все работает как надо Содержимое файла names.txt HTML: sdf sdfsd1 test2 sdfsdf sgdf3 sdgdgdfg dgdfgdf4 test fgd5 testdfg dgdfgdf6 dgdfgdf7 Если указать строку поиска test fgd5 То выведет так: HTML: <a href="/test-fgd5">test fgd5</a> <a href="/testdfg-dgdfgdf6">testdfg dgdfgdf6</a> <a href="/dgdfgdf7">dgdfgdf7</a> <a href="/"></a> <a href="/"></a> То есть если строки кончаются, то не достающие строки должно брать с самого начала.. То есть с перовой строки Вот так: HTML: <a href="/test-fgd5">test fgd5</a> <a href="/testdfg-dgdfgdf6">testdfg dgdfgdf6</a> <a href="/dgdfgdf7">dgdfgdf7</a> <a href="/sdf-sdfsd1">sdf sdfsd1</a> <a href="/test2">test2</a> Помогите пожалуйста с решение этой проблемы... очень надо.. я слабо знаком с php.