ヒアドキュメント

テキストにタイプされたとおりに表示します。
html 文などを吐き出すときに print や [""] が省略できるのでソースコードが見易くなります。

プログラム-1

  1. エディタで hdoc1.pl を作成して下さい。
    [EOD] はどんな文字でもかまいませんが、慣例として大文字を使います。
    print <<EOD;
    これは
    ヒア
    ドキュメント
    の
    例です。
    EOD
    
  2. 【実行画面】
    C:\Windows\System32>cd \data\perl
    
    C:\DATA\Perl>perl hdoc1.pl
    これは
    ヒア
    ドキュメント
    の
    例です。
    
    C:\DATA\Perl>
    
  3. print <<EOD; ~ EOD で囲まれた行が吐き出されています。

プログラム-2

  1. エディタで hdoc2.pl を作成して下さい。
    Perl は CGI(Common Gateway Interface) 用のプログラム言語として最も注目を集めています。
    CGI では良くプログラムの出力として html文を吐き出すのですが、このときヒアドキュメントの機能が役に立ちます。
    このサンプルでは簡単な html文を吐き出しています。
    print <<TEXTEND;
    <HTML>
    <HEAD><TITLE>Perl</TITLE></HEAD>
    <BODY>
    <H1>Perl とは?</H1>
    Perl はパールと読みますが、真珠の(pearl)とは a の文字が足りません。<BR>
    </BODY>
    </HTML>
    TEXTEND
    
  2. 【実行画面】
    C:\DATA\Perl>perl hdoc2.pl
    <HTML>
    <HEAD><TITLE>Perl</TITLE></HEAD>
    <BODY>
    <H1>Perl とは?</H1>
    Perl はパールと読みますが、真珠の(pearl)とは a の文字が足りません。<BR>
    </BODY>
    </HTML>
    
  3. print <<TEXTEND; ~ TEXTEND で囲まれた行が吐き出されています。
    サーバーにアップロードしてホームページから実行する方法は ヒアドキュメント を参照して下さい。

プログラム-3

  1. エディタで hdoc3.pl を作成して下さい。
    perl 変数の値を埋め込んだ html文を吐き出します。
    フルーツの名前と投票結果を perl の変数から取得して表示しています。
    $name1= "いちご";
    $name2= "りんご";
    $name3= "みかん";
    $cnt1= 123;
    $cnt2= 77;
    $cnt3= 8;
    
    print <<EOD;
    <html>
      <head> <title>投票結果</title> </head>
      <body>
        <h1>現在の投票結果です</h1>
        <table border=1>
        <tr><th>果物</th>    <th>得票</th></tr>
        <tr><td>$name1</td>  <td>$cnt1票</td></tr>
        <tr><td>$name2</td>  <td>$cnt2票</td></tr>
        <tr><td>$name3</td>  <td>$cnt3票</td></tr>
        </table>
      </body>
    </html>
    EOD
    exit;
    
  2. 【実行画面】
    C:\DATA\Perl>perl hdoc3.pl
    <html>
      <head> <title>投票結果</title> </head>
      <body>
        <h1>現在の投票結果です</h1>
        <table border=1>
        <tr><th>果物</th>    <th>得票</th></tr>
        <tr><td>いちご</td>  <td>123票</td></tr>
        <tr><td>りんご</td>  <td>77票</td></tr>
        <tr><td>みかん</td>  <td>8票</td></tr>
        </table>
      </body>
    </html>
    
  3. print <<EOD; ~ EOD で囲まれた行が吐き出されています。
    $name1, $cnt1 などの Perl の変数が置き換えられていることに注目して下さい。

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