ファイルの最後が空行だったら改行を消す処理。

<?php
        $strFileName = "hoge.txt";
        $nl = "\r\n";
        $f_size = filesize($strFileName);
        if( strlen($nl) > $f_size ) die("Pugya-.");
        $fp = fopen( $strFileName, "r+" ) or die("Can't open file.");
	flock($fp,LOCK_EX);
	fseek($fp,$f_size-strlen($nl));
	$buff = fgets($fp,strlen($nl)+1);
	if( $buff == $nl ){
		rewind( $fp );
		ftruncate( $fp, filesize($strFileName)-strlen($nl) );
	}
	fclose( $fp );
?>

ファイル全体読み込んでバッファにため込んで・・・とかしてるとメモリ食いすぎ!となってしまうので、
こういう手法でやると良いです。Cとか他の言語でも同様です。