初めてのPerl 第4章 ~4.7 local演算子~

変数をグローバルで宣言、値を代入する。
この変数と同名の変数を、あるサブルーチン中でlocal演算子を用いて
宣言し、値を代入してする。
この場合、サブルーチン内では内部で代入された値が有効になるが、
処理を終えサブルーチンから抜けると、変数の値はグローバルで
代入された値に戻る。
サンプル

  #! /usr/bin/perl

  $a=10;
  $b=20;

  print "$a , $b \n"; # 10 , 20 と表示
  &sub_local();
  print "$a , $b \n"; # 10 , 20 と表示

  sub sub_local{
    local($a,$b) = (15,25) #localがなければ、この値がサブルーチン終了後も有効になる
    print "$a , $b \n"; # 15 , 25 と表示
  }