foreach ふぉーいーち
whileやforみたいな、繰り返しを行う制御文。
#!/usr/bin/perl @arg = 1..10; $sum = 0; $tmp = 0; foreach $tmp (@arg) { $sum += $tmp } print "$sum\n";
結果
55
foreachの処理は
配列argの$arg[0]の値を$tmpにセットして、$sumに加えます。
以下等同様に
$arg[1]の値を$tmpにセットして、$sumに加えます。
$arg[2]の値を$tmpにセットして、$sumに加えます。
$arg[3]の値を$tmpにセットして、$sumに加えます。
.
.
.
$arg[9]の値を$tmpにセットして、$sumに加えます。
ここで、$arg[10]に値はセットされていませんから、ここまでくるとforeach文は実行されず。
print文を実行してプログラムが終了します。
ちなみに配列argに一つも値が設定されていないと、foreach文は一度も実行されません。