• 締切済み

意味を教えてください

初心者なのですが、sendmailのプログラムを勉強していて、意味がどーしても分からないので教えて下さい。 #メール本文 my $mailbody = "以下の通りメールフォームより送信がありました。\n\n"; $mailbody .= "送信日時 = $now\n"; foreach my $i (0..$#key){ #modeはスキップ if($key[$i] eq "mode"){next;} #改行変換(タブ→\n) $val[$i] =~s/\t/\n/g; #メール本文 $mailbody .= "$key[$i] = $val[$i]\n"; } で、 (1)$mailbody .=の.=って何ですか?何で=の前に.が付いているのですか? (2)(0..$#key){ の所、$#key なぜ$の次にコメントの始まりである#が付いているのでしょうか? 自分なりに調べたのですが、どーしても分からなくてどなた様かお教え願えないでしょうか。よろしくお願い申し上げます。

みんなの回答

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.2

$# は意味ありますよ?. 対応する配列の「最後の添字」だったかな? つまり, $#key なら「配列 @key の最後の添字」だったような気がする.

u2122
質問者

お礼

わざわざご指摘下さり、本当にありがとうございました!!「配列 @key の最後の添字」 でググッタら出てきました。なるほど、大変参考になりました。大感謝です。

  • gwagaw
  • ベストアンサー率18% (11/59)
回答No.1

perlを触ったことないオイラでもちょろっと検索したら分かるのに自分なりに調べたとは思えませんが。 (1)$mailbody .=の.=って何ですか?何で=の前に.が付いているのですか? 文字列を追加して代入する演算子でしょう。 「.」がないと$mailbodyには「送信日時 = $now\n」しか代入されません。 (2)(0..$#key){ の所、$#key なぜ$の次にコメントの始まりである#が付いているのでしょうか? きっとこれサンプルコードじゃないですか?見る人にわかりやすいように付いてるだけです。

u2122
質問者

お礼

(1)代入演算子でググッたらのってました。自分の見落としでした。 (2)は特に意味はないんですね。ありがとうございました。

関連するQ&A