PHP は初めてで、Web ページに表示されている CSV ファイルがあります。Webページが見栄えがするように、CSVファイルをページネーションオプションで表示したい。これは私がこれまでに持っているコードです。
<?php
$names = file('demo.csv');
$page = $_GET['page'];
//constructor takes three parameters
//1. array to be paged
//2. number of results per page (optional parameter. Default is 10)
//3. the current page (optional parameter. Default is 1)
$pagedResults = new Paginated($names, 20, $page);
echo "<ul>";
while($row = $pagedResults->fetchPagedRow()) {
//when $row is false loop terminates
echo "<li>{$row}</li>";
}
echo "</ul>";
//important to set the strategy to be used before a call to fetchPagedNavigation
$pagedResults->setLayout(new DoubleBarLayout());
echo $pagedResults->fetchPagedNavigation();
?>
ただし、CSV ファイルは画面にカンマ付きで表示されます。以下の例を考えてみましょう。csv ファイルに 40 個のレコードがあるとします。CSVファイルの内容は以下の通りです。
- 著者 1、名前 1、名前 2、電子メール
- 1、ジョン、スミス、john.smith@gmail.com
- 2、ジャック、ギブス、Jack.gibbs@gmail.com
- 3、マイク、デル、Mike.dell@gmail.com
等々。
私の Web ページでは、出力を 2 ページで取得しています (各ページに 20 レコードを表示するようにページネーション オプションを設定したためです。
$pagedResults = new Paginated($names, 20, $page);
ただし、出力には元の CSV ファイルのコンマが含まれています。出力を以下のようにしたい。
先頭ページ:
- 作成者1 名前1 名前2 電子メール
- 1 ジョン・スミス john.smith@gmail.com
等々。
2 ページ目:
- 作成者1 名前1 名前2 電子メール
等々。