「戻る」リンクを作る@のぶろぐ
今回は、今後のPerlで推奨されるであろう、“use utf8;“を使ってみた。
CGI.pmでは、環境変数に直接アクセスしなくても取得できる。
もちろん、間接的にはアクセスするわけだが。
もし、環境変数が%ENVじゃなくて、%Environmentという変数に変わったとしたら、そのソースコードは動くでしょうか?
CGI.pmを介して環境変数にアクセスしているのであれば、新しい環境変数に対応したCGI.pmにアップグレードされれば、ソースコードを変更する必要は無い。
今回はサンプル付きです。
ソースコード
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
  | 
#!/usr/bin/perl -T
# 日本語(utf-8)
use strict;
use warnings;
use Encode;
use utf8;
use CGI;
{
    my $cgi  = CGI->new;
    my $html = "";
    $html .= $cgi->header( { -charset => "utf-8" } );
    $html .= $cgi->start_html(
        {   -title => "テスト4",
            -lang  => "ja",
        }
    );
    $html .= $cgi->start_div;
    if ( my $referer = $cgi->referer ) {
        $html .= $cgi->a( { -href => $referer }, "戻る" );
    }
    else {
        $html .= $cgi->p(
            "HTTPからアクセスされていません。たぶん。");
    }
    $html .= $cgi->end_div . $cgi->end_html;
    print Encode::encode( "utf-8", $html );
    #    print $html;
}
  |