PHPでCSV読み込み!
Updated:
今日はWebサーバ上にあるCSVファイルを読み込んで表示させるということをしました。
実際にはロト6の当選データで試しました。
以下がソースサンプルです。
<?php
// CSVファイルの読み込み
// ドキュメントルートの「docs/LOTO/」フォルダに「LOTO6_ALL.csv」という名前のCSVファイルを置いている場合
$openfile = file_get_contents('docs/LOTO/LOTO6_ALL.csv');
// ここで1行ずつ分けている
$csv_gyo = split("\n", $openfile);// ここで1行ずつ分けている
echo "<table>";// 1行ずつ読み込みながらのループ処理
foreach($csv_gyo as $kurikaeshi) {
// ここでカンマごとに分けている
list($No,$抽選日,$数字1,$数字2,$数字3,$数字4,$数字5,$数字6,$数字B,$1等口数,$2等口数,$3等口数,$4等口数,$5等口数,$1等金額,$2等金額,$3等金額,$4等金額,$5等金額,$キャリーオーバー) = split(",", $kurikaeshi);
// HTMLソースの出力
echo "<tbody><tr>";
echo "<td>".$No."</td>";
echo "<td>".$抽選日."</td>";
echo "<td>".$数字1."</td>";
echo "<td>".$数字2."</td>";
echo "<td>".$数字3."</td>";
echo "<td>".$数字4."</td>";
echo "<td>".$数字5."</td>";
echo "<td>".$数字6."</td>";
echo "<td>".$数字B."</td>";
echo "<td>".$1等口数."</td>";
echo "<td>".$2等口数."</td>";
echo "<td>".$3等口数."</td>";
echo "<td>".$4等口数."</td>";
echo "<td>".$5等口数."</td>";
echo "<td>".$1等金額."</td>";
echo "<td>".$2等金額."</td>";
echo "<td>".$3等金額."</td>";
echo "<td>".$4等金額."</td>";
echo "<td>".$5等金額."</td>";
echo "<td>".$キャリーオーバー."</td>";
echo "</tr>";
}
echo "</tbody></table>";
?>
基本的なコーディングは上記でいいんですが、 このままではこんな↓↓↓↓感じで体裁が悪いので、
さらにソースを以下のように修正し、CSSでデザインを設定しました。
``` php
//読み込み行数
$lineno = 0;
// CSVファイルの読み込み
$openfile = file_get_contents('docs/LOTO/LOTO6_ALL.csv');
// ここで1行ずつ分けている
$csv_gyo = split("\n", $openfile);
echo "
";
// 1行ずつ読み込みながらのループ処理
foreach($csv_gyo as $kurikaeshi) {
// ここでカンマごとに分けている
list($No,$抽選日,$数字1,$数字2,$数字3,$数字4,$数字5,$数字6,$数字B,$1等口数,$2等口数,$3等口数,$4等口数,$5等口数,$1等金額,$2等金額,$3等金額,$4等金額,$5等金額,$キャリーオーバー) = split(",", $kurikaeshi);
// 読み込み行数カウントアップ
$lineno++;
// 1行目はヘッダなのでそのまま表示
if($lineno == 1) {
echo "
";
?>
```
結局こんな感じに出来上がりました。
↓↓↓↓
![php_csv_read_2](/images/2009/02/php_csv_read_2.jpg "php_csv_read_2")
実際の出来ばえは私の [ホームページ](http://www.mk-mode.com/rails/loto/loto6 "ホームページ") でご確認下さい。
(後日追記→)※上記のサイトは現在「 Ruby on Rails 」に移行しています。
ちなみに、
今回からソースをまんま貼り付けて表示させることのできるWordPress用のプラグイン
[Syntax Highlighter for WordPress (ソース整形表示)](http://wppluginsj.sourceforge.jp/syntax-highlighter/ "Syntax Highlighter for WordPress (ソース整形表示)")
を使いました。
では、では。
".$No." | "; echo "".$抽選日." | "; echo "".$数字1." | "; echo "".$数字2." | "; echo "".$数字3." | "; echo "".$数字4." | "; echo "".$数字5." | "; echo "".$数字6." | "; echo "".$数字B." | "; echo "".$1等口数." | "; echo "".$2等口数." | "; echo "".$3等口数." | "; echo "".$4等口数." | "; echo "".$5等口数." | "; echo "".$1等金額." | "; echo "".$2等金額." | "; echo "".$3等金額." | "; echo "".$4等金額." | "; echo "".$5等金額." | "; echo "".$キャリーオーバー." | "; echo "
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
".$No." | "; echo "".$抽選日." | "; echo "".$数字1." | "; echo "".$数字2." | "; echo "".$数字3." | "; echo "".$数字4." | "; echo "".$数字5." | "; echo "".$数字6." | "; echo "".$数字B." | "; echo "".number_format($1等口数)." | "; echo "".number_format($2等口数)." | "; echo "".number_format($3等口数)." | "; echo "".number_format($4等口数)." | "; echo "".number_format($5等口数)." | "; echo "".number_format($1等金額)." | "; echo "".number_format($2等金額)." | "; echo "".number_format($3等金額)." | "; echo "".number_format($4等金額)." | "; echo "".number_format($5等金額)." | "; echo "".number_format($キャリーオーバー)." | "; echo "
Comments