【www.gdgbn.com--C语言】
//sort() 函数按升序对给定数组的值排序。
$my_array = array("a" => "dog", "b" => "cat", "c" => "horse");
sort($my_array);
print_r($my_array);//krsort(array,sorttype)函数将数组按照键逆向排序,为数组值保留原来的键。
$my_array = array("a" => "dog", "b" => "cat", "c" => "horse");
krsort($my_array);
print_r($my_array);//看一款实例
function natkrsort($array)
{
$keys = array_keys($array);
natsort($keys);foreach ($keys as $k)
{
$new_array[$k] = $array[$k];
}
$new_array = array_reverse($new_array, true);return $new_array;
}
// arsort() arsort() 函数对数组进行逆向排序并保持索引关系。主要用于对那些单元顺序很重要的结合数组进行排序。
$my_array = array("a" => "dog", "b" => "cat", "c" => "horse");
arsort($my_array);
print_r($my_array);
//asort() 函数对数组进行排序并保持索引关系。主要用于对那些单元顺序很重要的结合数组进行排序
$my_array = array("a" => "dog", "b" => "cat", "c" => "horse");
asort($my_array);
print_r($my_array);
//缩合上面的实例,写一款数组排序函数
/**
* 对数组排序
* @param array $array 操作的数组
* @param string $type key按键排序,value按值排序
* @param string $field 字段名
* @param string $order 排序方式asc顺序desc逆序
* @return void
*/
function sort(&$array, $type = "value", $field = null, $order = "asc") {
if ($field) {
foreach ($array as $key => $value) {
$temp[$key] = $value[$field];
}
if ($order=="asc") {
asort($temp);
} else {
arsort($temp);
}
$newarray = array();
foreach ($temp as $key => $value) {
$newarray[] = $array[$key];
}
$array = $newarray;
} else {
if ($type=="key") {
if ($order=="asc") {
ksort($array);
} else {
krsort($array);
}
} else {
if ($order=="asc") {
asort($array);
} else {
arsort($array);
}
}
}
}