В начале использовал вот такой вариант, но потом оказалось, что он еще вырезает пустые символы табуляции в конце каждой строки
$text = preg_replace('~\s\s+~', "\r\n", $text);
потом попробовал вот такой маневр с заменой символов перевода строки и каретки (он то и подошел)
$contents = str_replace (chr(13).chr(10), "\n", $contents);
+есть вот такой способо на PHP5, исходник lines.txt, результат lines2.txt :
file_put_contents('lines2.txt',file('lines.txt', FILE_SKIP_EMPTY_LINES));
или: Ctrl+H в любом нормальном редакторе. \n\n заменяем на \n и так N раз