- 论坛徽章:
- 0
|
两个方法对应的数组存储方式是不一样的
详见代码
- <?
- //第一种排序方法
- //列方式存放多维数组,排序方式可以按列选,这里我没写参数,详见array_multisort的用法
- /*
- $aclass["acid"][0] = 1;
- $aclass["acorder"][0] = 3;
- $aclass["acname"][0] = "入门指南";
- $aclass["acinfo"][0] = "PHP基础知识";
-
- $aclass["acid"][1] = 2;
- $aclass["acorder"][1] = 1;
- $aclass["acname"][1] = "应用技巧";
- $aclass["acinfo"][1] = "PHP编程技巧总结";
-
- $aclass["acid"][2] = 3;
- $aclass["acorder"][2] = 2;
- $aclass["acname"][2] = "高级应用";
- $aclass["acinfo"][2] = "PHP程序的高级应用";
- array_multisort($aclass['acorder'],$aclass['acid'],$aclass['acname'],$aclass['acinfo']);
- print_r($aclass);
- */
- //第二种排序方法
- //行方式存放的多维数组
- $aclass[0]["acid"] = 1;
- $aclass[0]["acorder"] = 3;
- $aclass[0]["acname"] = "入门指南";
- $aclass[0]["acinfo"] = "PHP基础知识";
-
- $aclass[1]["acid"] = 2;
- $aclass[1]["acorder"] = 1;
- $aclass[1]["acname"] = "应用技巧";
- $aclass[1]["acinfo"] = "PHP编程技巧总结";
-
- $aclass[2]["acid"] = 3;
- $aclass[2]["acorder"] = 2;
- $aclass[2]["acname"] = "高级应用";
- $aclass[2]["acinfo"] = "PHP程序的高级应用";
-
- //升序
- //可以另写函数,也可用create_function构造函数
- /*function cmp_function($a,$b){
- $k = "acorder";
- if($a[$k] == $b[$k]) return 0;
- return $a[$k]>$b[$k]?-1:1;
- }*/
- $cmp_func = create_function('$a,$b','
- $k = "acorder";
- if($a[$k] == $b[$k]) return 0;
- return $a[$k]>$b[$k]?-1:1;
- ');
- usort($aclass,$cmp_func);
- print_r($aclass);
-
- // 降序
- /*
- $desc_func = create_function('$a,$b','
- $k = "acorder";
- if($a[$k] == $b[$k]) return 0;
- return $a[$k]>$b[$k]?-1:1;
- ');
- usort($aclass,$desc_func);
- print_r($aclass);
- */
- ?>
复制代码 |
|