PHPでCSV読み込み!

更新日時:


今日は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>";

?>

基本的なコーディングは上記でいいんですが、 このままではこんな↓↓↓↓感じで体裁が悪いので、

php_csv_read_1

さらにソースを以下のように修正し、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 " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; // 2行目からは数値をカンマ区切りする } else { echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; echo " "; } } echo "
".$No."".$抽選日."".$数字1."".$数字2."".$数字3."".$数字4."".$数字5."".$数字6."".$数字B."".$1等口数."".$2等口数."".$3等口数."".$4等口数."".$5等口数."".$1等金額."".$2等金額."".$3等金額."".$4等金額."".$5等金額."".$キャリーオーバー."
".$No."".$抽選日."".$数字1."".$数字2."".$数字3."".$数字4."".$数字5."".$数字6."".$数字B."".number_format($1等口数)."".number_format($2等口数)."".number_format($3等口数)."".number_format($4等口数)."".number_format($5等口数)."".number_format($1等金額)."".number_format($2等金額)."".number_format($3等金額)."".number_format($4等金額)."".number_format($5等金額)."".number_format($キャリーオーバー)."
"; ?>
``` 結局こんな感じに出来上がりました。 ↓↓↓↓ ![php_csv_read_2](/blog/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 (ソース整形表示)") を使いました。 では、では。
 

Sponsored Link

 

コメントする