perl初めて一ヶ月の俺が言うのもなんだけど
テキストファイルの最後に改行が2つないかい?
俺が思うに改行が2つあるため
@txt = ("1...\n","2...\n","3...\n","\n");
って感じになったと思う。
ちなみに
@txt = ('1,名前,メール,内容', '2,名前,メール,内容', '3,名前,メール,内容');
$last_txt=pop(@txt);
@words=split(/,/,$last_txt);
$last_id=shift(@words);
push(@txt,$last_txt);
print $last_id;
で3になった。

漏れの質問だが
コンストラクタってなんだ?
教えてくれ。。。