アプリ版:「スタンプのみでお礼する」機能のリリースについて

id date sex
1 20101110 男
2 20101110 女
3 20101114 男
4 20101115 男
5 20101115 男
6 20101115 女
7 20101115 男
8 20101115 男
9 20101115 女
10 20101115 男

というタブ区切りのcsvデータがあるとします。
これを、日付・性別の順番でソートしたいのですが、どのようにしたらいいかわかりません。

MySQLでのORDER BY date,sex
のようなことがしたいです。

A 回答 (3件)

そのデータをエクセルで表に読み込めば簡単にソーティングできますよね。

それではダメなのでしょうか?

この回答への補足

すみません、PHPで処理して、WEB上で表示させたいのです。

補足日時:2010/11/26 10:17
    • good
    • 0

usortします



<?
$filename="data.csv";
$handle = fopen($filename, "r");
$headflg=true;
$count=0;
while (($row = fgetcsv($handle,1024, "\t")) !== FALSE) {
$rows[]=$row;
}
fclose($handle);

usort($rows,"sort_date_sex");
print "<pre>\n";
print_r($rows);
print "</pre>\n";

function sort_date_sex($a, $b){
if($a[1] < $b[1]) return -1;
if($a[1] > $b[1]) return 1;
if($a[2] < $b[2]) return -1;
if($a[2] > $b[2]) return 1;
if($a[0] < $b[0]) return -1;
if($a[0] > $b[0]) return 1;
return 0;
}
?>
    • good
    • 0

確かそんな関数もあったな、と思ったらやっぱりあった。


http://jp.php.net/manual/ja/function.array-multi …

複雑なことがしたい場合は、一時的にデータベースに流し込んでもいいし、好きなように。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!