例えば、「商品リスト一覧」を制作しなければならなくて、一覧ページから各商品の個別ページに飛ぶ・・・というような遷移の場合、
商品が10個くらいならよいですが、100個も200個もあった場合、HTMLだと100枚も200枚も作らないといけません。
この場合、各商品ページのテンプレートだけ作成して、商品名や画像ファイル名などはCSVファイルにひとまとめにしておいて、
リスト一覧のリンクをクリックすれば、テンプレートにCSVのデータを挿入させるようにすれば作業がとっても楽です。
デザイン変更の場合も、100枚のHTMLファイルを更新するのではなく、1枚のテンプレートだけを書き換えればよくなるので、効率がいいです。
下に、最も単純な方法を書きます。
3ファイル用意します
list.php 商品一覧リストページ
result.php 個別商品ページのテンプレート
data.csv 商品データ
【list.php 商品一覧リストページ】
<html>
<head><title>PHP</title></head>
<body>
PHP test<br><br>
<a href="result.php?product=1">商品1</a><br>
<a href="result.php?product=2">商品2</a><br>
<a href="result.php?product=3">商品3</a><br>
</body>
</html>
【result.php 個別商品ページのテンプレート】
<html>
<head><title>PHP</title></head>
<body>
PHP test<br><br>
<?php
print "渡した値を変数に:";
print $atai;
print "<br><br>";
$fp = fopen("data.csv", "r");
while ($data = fgetcsv($fp, 10000)) {
if($atai==$data[0]){
print "$data[1]<br>";
}
}
fclose ($fp)
?>
</body>
</html>
【data.csv 商品データ】
1,商品1,product1.jpg
2,商品2,product2.jpg
3,商品3,product3.jpg
4,商品4,product4.jpg
これで、商品1のリンクをクリックしたときは、商品1のデータがテンプレートに渡され、上の場合だと$data[1]の商品名がprintされます。
$data[2]を利用すれば、当然商品1の画像ファイルが表示できます。
dataは増やせるので、色々応用できると思います。