php 二维数组按照某列排序
2011-01-27 16:06
495 查看
思路:
1.将某列的数据和索引放到一个数组"$temp"中
2.排列"$temp"数组
3.根据此时的索引读取原先的数组
php代码如下:
<?php
function array_sort($arr,$flag,$order)
{
foreach($arr as $key=>$value)
{
$temp[$key]= $value[$flag];
}
if($order=="ASC")
{
asort($temp);//升序排序临时组成的数组
}
if($order=="DESC")
{
asort($temp,SORT_NUMERIC);
arsort($temp,SORT_NUMERIC);//反转
}
foreach($temp as $temp_key=>$temp_value)
{
$new_arr[$temp_key]= $arr[$temp_key];//读出数据
}
return $new_arr;
}
//例子
$arr=array("冰冰"=>array("语文"=>85,"数学"=>95,"英语"=>90),"琪琪"=>array("语文"=>92,"数学"=>65,"英语"=>70),
"小王"=>array("语文"=>90,"数学"=>95,"英语"=>90));
$sort_arr=array_sort($arr,"语文","ASC");//按照语文成绩升序排序
echo "<pre>";
print_r($sort_arr);
echo "</pre>";
?>
结果:
1.将某列的数据和索引放到一个数组"$temp"中
2.排列"$temp"数组
3.根据此时的索引读取原先的数组
php代码如下:
<?php
function array_sort($arr,$flag,$order)
{
foreach($arr as $key=>$value)
{
$temp[$key]= $value[$flag];
}
if($order=="ASC")
{
asort($temp);//升序排序临时组成的数组
}
if($order=="DESC")
{
asort($temp,SORT_NUMERIC);
arsort($temp,SORT_NUMERIC);//反转
}
foreach($temp as $temp_key=>$temp_value)
{
$new_arr[$temp_key]= $arr[$temp_key];//读出数据
}
return $new_arr;
}
//例子
$arr=array("冰冰"=>array("语文"=>85,"数学"=>95,"英语"=>90),"琪琪"=>array("语文"=>92,"数学"=>65,"英语"=>70),
"小王"=>array("语文"=>90,"数学"=>95,"英语"=>90));
$sort_arr=array_sort($arr,"语文","ASC");//按照语文成绩升序排序
echo "<pre>";
print_r($sort_arr);
echo "</pre>";
?>
结果:
Array ( [冰冰] => Array ( [语文] => 85 [数学] => 95 [英语] => 90 ) [小王] => Array ( [语文] => 90 [数学] => 95 [英语] => 90 ) [琪琪] => Array ( [语文] => 92 [数学] => 65 [英语] => 70 ) )
相关文章推荐
- PHP实现在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
- PHP按照某个键值对二维数组进行排序
- (PHP实现剑指offer)在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
- php 对二维数组按照汉字首字母排序
- php二维数组按照某一列排序的方法
- php二维数组按照键值排序的方法
- 【php】对给定二维数组按照指定的键值进行排序
- php二维数组按照键值排序的方法
- (PHP实现剑指offer)在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
- php二维数组按照某个键值排序
- PHP 对一个给定的二维数组按照指定的键值进行排序
- PHP二维数组按照指定的字段排序的函数
- PHP 的二维数组,按照某个键的值进行排序
- php二维数组排序 按照指定的key 对数组进行排序
- PHP 对一个给定的二维数组按照指定的键值进行排序
- php中二维数组排序问题方法详解
- PHP 二维数组根据某个字段进行排序
- php基础篇-二维数组排序 array_multisort
- PHP 二维数组根据某个字段排序
- 输入一个5X5的二维数组,将数组进行排序,其中一维数组按照平均值降序,一维数组内部升序排列。