$arr = array(40, 39, "2", 11);
array_multisort($arr,SORT_NUMERIC, SORT_DESC);
print_r($arr);就是对数组按照数字降序排列,结果为
Array
(
[0] => 40
[1] => 2
[2] => 39
[3] => 11
)我想知道这个字符串"2"是怎么参加排序的,为什么是在这个位置?
array_multisort($arr,SORT_NUMERIC, SORT_DESC);
print_r($arr);就是对数组按照数字降序排列,结果为
Array
(
[0] => 40
[1] => 2
[2] => 39
[3] => 11
)我想知道这个字符串"2"是怎么参加排序的,为什么是在这个位置?
(
[0] => 40
[1] => 39
[2] => 11
[3] => 2
)你的程序我输出这样的,我想知道你是咋输出来那样的
下面这部分是源程序
<?php
$arr1 = array("20", 40, 60, "a");
$arr2 = array(5, 9, "2", 12);
array_multisort($arr1, $arr2);
print_r($arr1);
print_r($arr2);$arr3 = array(array("10", 11, 100, "a"),
array(40, 39, "2", 11));
array_multisort($arr3[0], SORT_ASC, SORT_STRING,
$arr3[1], SORT_NUMERIC, SORT_DESC);
print_r($arr3);$arr4 = array(array("key1"=>"10", 11, "key10"=>100, 101, "a"),
array("key20"=>15, 33, "key30"=>"2", 23, 55));
array_multisort($arr4[0], SORT_DESC, SORT_STRING,
$arr4[1], SORT_NUMERIC, SORT_ASC);
print_r($arr4);?>
(
[0] => Array
(
[0] => 10 => 原来0
[1] => 100 => 原来2
[2] => 11 => 原来1
[3] => a => 原来3
)
===========>1元素根据0元素来排序
[1] => Array
(
[0] => 40 => 原来0
[1] => 2 => 原来2
[2] => 39 => 原来1
[3] => 11 => 原来3
))
他对参与排序的数组按内部指针关联,排在前面的是主排序。
排序前后各数组元素家的对应关系不会改变