ホームページ制作会社、サイト制作、その他各種システムの構築、CGI、PHP等のWEBアプリ開発

ホームページ制作・システム構築・DB設計ホームページ制作・システム構築・DB設計
ホームページ制作とWEBシステムの構築、カスタマイズから運用サポートまで。
スペーサー

PHPでCSVのファイルを読み込み、連想配列に入れ、一件づつ表示する


に関連する記事です。

250店の店舗情報を一店舗づつ個別のHTMLで表示して欲しい、という依頼を受けた。
あまり予算もなく時間もかけられない案件である。

そんな時はPHPの出番だ。
それぞれの店舗を呼び出す元ページからすべて同じPHPファイルにリンクして、引数で各店舗情報を判断し表示する。

店舗情報をCSVファイルとしてまとめる時間に労力を掛け、ブラウザに出力する部分はPHPにお任せするというプログラムだ。
CSVのファイルの行が多すぎると時間がかかり過ぎてしまうので、データベースなどを使用することをお勧めする。

<a href="shop.php?shop_id=101">新宿店</a><br />
<a href="shop.php?shop_id=102">代々木店</a><br />
<a href="shop.php?shop_id=103">原宿店</a><br />
<a href="shop.php?shop_id=104">渋谷店</a><br />

呼び出すファイルはすべてshop.phpのみの一枚であり、shop.phpから店舗情報を一括でまとめたCSVファイルを一行目から順々に読み込み目的のshop_idが読み込まれた時だけ出力するという方法だ。

csvファイルはこんな感じ

100,店舗名,店舗名ひらがな,ローマ字
101,新宿店,しんじゅくてん,SHINJUKU
102,代々木店,よよぎてん,YOYOGI
103,原宿店,はらじゅくてん,HARAJUKU
104,渋谷店,しぶやてん,SHIBUYA

エクセルで見ると良く見えるよ。(保存する形式を間違えないでね)

$変数名[0] ( [0] => 100 [1] => 店舗名 [2] => 店舗名ひらがな [3] => ローマ字 )
$変数名[1] ( [0] => 101 [1] => 新宿店 [2] => しんじゅくてん [3] => SHINJUKU )

と連想配列に入ってくれたらほぼ成功。

ちなみに今回の場合は
$str[0] ( [0] => 100 [1] => 店舗名 [2] => 店舗名ひらがな [3] => ローマ字 )
$str[1] ( [0] => 101 [1] => 新宿店 [2] => しんじゅくてん [3] => SHINJUKU )
と連想配列に入ることとなる

$str[1][2]と指定すれば、「しんじゅくてん」と表示され、
$str[1][3]と指定すれば、「SHINJUKU」と表示される。

以下、順におって説明。

20110115.gif

出来上がったサンプルはこちら

このPHPのサンプルダウンロードはこちら!
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
ホームページ制作・システム構築・DB設計
●ユタデザイン
●住所:〒135-0062
東京都江東区東雲2-7-5-3503
ユタデザイン
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+



Valid XHTML 1.0 Transitional スペーサー 正当なCSSです!