//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);
}
}
}
}