PHPでCSVファイルを読み込む

(1/2)
前回述べたように、PHP は、ローカルマシンにあるファイルと、インターネット上(URL表記)のコンテンツを同等に扱うことができる。
そこで今回は、ローカルマシン上にある CSV ファイルを読み込み、HTML の表に変換するプログラムをつくる。

サンプル・プログラム

プログラムを実行する

プログラムをダウンロードする

ヒアドキュメント

全体的に、入力と変換・表示を1つのプログラムファイルですませるように工夫している。
space
入出力のための HTML タグが多いので、いちいち関数  echo  や  print  を使って出力するのは面倒である。そこで、PHP に用意されている「ヒアドキュメント」という仕組みを利用する。
space
たとえば、このサンプル・プログラムでは、"<<< EOF" の次の行から "EOF;" の直前行まで、そのままの形で関数  echo  に渡され、画面に表示される。
また、ヒアドキュメントの中には、PHP 変数や式を埋め込むことができる。

0015: echo <<< EOF
0016: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
0017:  "http://www.w3.org/TR/html4/loose.dtd">
0018: <html lang="ja">
0019: <head>
0020: <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
0021: </head>
0022: <body>
0023: 
0024: EOF;

input type="file"タグ

ローカルマシン上のファイルを選択するダイアログを表示させるためには、HTML の input type="file" タグを用いる。使い方は、他の input シリーズと同じである。
1つだけ注意したいのは、type="file" が HTTP サーバに送るデータは、指定されたファイルの中身も含まれているということである。もちろんバイナリ・ファイルも送ることができるので、エンコード・タイプを指定してやらなければならない。通常は、enctype="multipart/form-data"を指定する。type="file"の内容は POST METHOD で送られ、PHP 側では配列変数 $_FILE で受け取ることができる。

0031: <form method="post" action="$myself" enctype="multipart/form-data">
0032: ファイル選択:<input name="file" type="file" size="80" />
0033: <input type="submit" name="submit" value="変換" />
0034: </form>

この項つづく
header