並べ替え

ファイルを読んで並べ替え

元のデータは前回読んだ tbltxt.txt。PHPでこれを読んでソートしてtableにします。

番号	姓	名	性別	みょうじ	なまえ
01	千葉	早織	女	ちば	さおり
02	對馬	奈那	女	つしま	なな
03	諏訪	真以子	女	すわ	まいこ
04	須藤	愛子	女	すとう	あいこ
05	横澤	真由美	女	よこさわ	まゆみ
06	赤石	魅音	女	あかいし	みお
07	三浦	大樹	男	みうら	だいき
08	住吉	亜希	女	すみよし	あき
09	井澤	麻美	女	いざわ	あさみ
10	齋藤	梨花	女	さいとう	りか
11	中田	裕也	男	なかた	ゆうや
12	荒川	諭子	女	あらかわ	さとこ
13	工藤	亜紗美	女	くどう	あさみ
14	福澤	静香	女	ふくさわ	しずか
15	齋藤	春人	男	さいとう	はると
16	山中	裕美	女	やまなか	ひろみ
17	花田	季恵	女	はなた	きえ
18	細貝	聖香	女	くりがた	せいか
19	田中	翠	女	たなか	みどり
20	浅利	麻希	女	あさり	あさき
21	松木	友子	女	まつき	ともこ
22	齋藤	啓太	男	さいとう	けいた

ソートしたものがこれ。cssであらかじめスタイルを作っておく

06赤石魅音あかいしみお
20浅利麻希あさりあさき
12荒川諭子あらかわさとこ
09井澤麻美いざわあさみ
13工藤亜紗美くどうあさみ
18細貝聖香くりがたせいか
22齋藤啓太さいとうけいた
15齋藤春人さいとうはると
10齋藤梨花さいとうりか
04須藤愛子すとうあいこ
08住吉亜希すみよしあき
03諏訪真以子すわまいこ
19田中たなかみどり
01千葉早織ちばさおり
02對馬奈那つしまなな
11中田裕也なかたゆうや
17花田季恵はなたきえ
14福澤静香ふくさわしずか
21松木友子まつきともこ
07三浦大樹みうらだいき
番号性別みょうじなまえ
16山中裕美やまなかひろみ
05横澤真由美よこさわまゆみ

そのプログラムがこれ。<table></table>はそのまま書き、その間にPHPプログラムを書く

<table>
<?php
$fp = fopen("tbltxt.txt","r");        
$arr_ct = 0;
while(!feof($fp)){
    $line = fgets($fp);
    if (trim($line) != null){
        list($no,$sei,$mei,$seib,$ysei,$ymei) = explode("\t",$line);
        $key = $ysei . " " . $ymei;
        $val = $line;
        $gotoarray[$key]=$val;
    }
}
fclose($fp);

ksort($gotoarray);
foreach ($gotoarray as $key => $val) {
   list($no,$sei,$mei,$seib,$ysei,$ymei) = explode("\t",$val);
        print "<tr>\n";
        print "<td>$no</td><td>$sei</td><td>$mei</td>";
        print "<td>$seib</td><td>$ysei</td><td>$ymei</td>\n";
        print "</tr>\n";
}
?>
</table>

課題

上記のように別ファイルからデータを読みなにかの項目で並べ替え、表を作るページを作りなさい。 データファイルは前回の課題と同じものでもよいし別のファイルを作っても良い。 phpのページファイルは sort.php という名前で保存します。index.htmlに「phpで表をソート」という名前の リンクを作ります。


ウェブページ(Feb.2012)
聖愛中学高等学校
http://www.seiai.ed.jp/
Feb.2012 初稿