CGI として Perl を使用する場合、まず目的とするのがファイルへの接触だろうと思います。
掲示板、チャット、ゲーム……大抵のことをするのには、避けることのできない道でしょう。 例えば、扱うファイルの名前を、 と定義しておき、さあこのファイルからデータをロードする……という場合はどうするかというと、 |
open(FILE, "<$filename");
while($_=<FILE>){ chop; print "$_\n"; } close FILE; |
このサンプルプログラムでは、「file.dat」というデータファイルの内容を1行ずつ読み込み、それをそのまま出力しています。この時、ファイルハンドル名「FILE」は任意の文字(使用している変数名を含む)で構いませんが、Perlの予約語との衝突を避けるため、全て大文字にするのが望ましいです。
さて、これでロードはできるようになりました。次はセーブです。 |
open(FILE, ">$filename");
print FILE "セーブする内容"; …☆ close FILE; |
赤い字の「>」は、書き込みする、という意味です(逆にするとロードになります。また、ロードの場合は省略可です)。ここで、2行目(☆印の行)を省くと、「file.dat」という新しい空のファイルを作成することができます。また、「>」を「>>」にすることで、既にファイルに書き込まれている内容の続きからデータを書き込むことができます。 |