2次元配列CSVのソート
2次元配列で次のCSVファイルがあります。
フォームから入力したのですが、txtファイルには項目名(列名)が保存されていません。
taro,10,119
jiro,10,90
hanako,9,120
momoko,11,98
saburo,12,111
natuyo,10,130
sirou,8,88
このデータを年齢順、及び身長順に並べ替えをしたいのです。
列の名前がないので、手動でtxtファイル1行目に
simei,toshi,shinchou
と追記して
01: <?php
02: $data = "c:\××\××\shinchou.txt";
03: $array = file($data);
04: foreach($array as $key => $row){
05: $toshi[$key] = $row["toshi"];
06: $shinchou[$key] = $row["shinchou "];
07: }
08: print_r($array);
09: array_multisort($toshi,SORT_ASC, $shinchou,SORT_ASC, $array);
10: ?>
と実行しましたが、
Array ( [0] => simei,toshi,shinchou [1] => taro,10,119 ・・・・と、print_r($array)の結果が出るだけで、ソートが出来ません。
CSVファイルで項目名(列名)が無い場合の並べ替えはどのようにすれば良いでしょうか。
mySQLなどを利用しないと並べ替えは出来ないでしょうか。
お礼
回答ありがとうございました! usortの存在自体知らなかったのですが、 提示いただいたコード、 コメント等も付記していただいたので、大変分かりやすかったです。 また、当初、提示いただいたコードを、修正いただいたようで、 色々お手数をおかけしました。 日付コメントを確認して、 修正前のコードと見比べることができたので、 より理解を深めることができました。 大変勉強になりましたー