DATE SubRoutine

日付(時刻)を生成するサブルーチンを作成します。

プログラムの説明

  1. エディタで Sub2.pl を作成して下さい。
    sub get_date
    {   local($sec,$min,$hour,$day,$mon,$year);
        ($sec,$min,$hour,$day,$mon,$year) = localtime(time);
        $year = ($year + 1900);
        $mon++;
        if ($sec < 10)  { $sec = "0$sec"; }
        if ($min < 10)  { $min = "0$min"; }
        if ($hour < 10) { $hour = "0$hour"; }
        if ($day < 10)  { $day = "0$day"; }
        if ($mon < 10)  { $mon = "0$mon"; };
        return "$year年$mon月$day日 $hour時$min分$sec秒";
    }
    
    print &get_date;    # 日時の表示
    exit;
    
  2. 【実行画面】
    C:\DATA\Perl>perl Sub2.pl
    2015年01月22日 08時12分20秒
    C:\DATA\Perl>
    
  3. print からサブルーチン(get_date)を呼び出します。
    サブルーチンの呼び出しは、名前の頭に & を付けます。
    今回はサブルーチンを先に定義してみました。
    print &get_date;
  4. サブルーチン get_date です。
    サブルーチンは sub で始めます。
    local($sec,$min,$hour,$day,$mon,$year); でローカル変数を定義します。
    localtime(time); で現在の日付と時刻を取得します。
    $year は、1900年をゼロ年として格納されています。
    各変数を調べて、一桁の値を二桁に揃えます。(例えば1月3日は01月03日)
    return で参照された位置に日時をリターンします。

前田稔の超初心者のプログラム入門
超初心者のプログラム入門(Perl)