$a2 = array('9'=>4,'1'=>3,'3'=>6,'34'=>1);
$a3 = array('as'=>12,'we'=>36,'sdsd'=>15,'qw'=>50);
$a3 = array('as'=>12,'we'=>36,'sdsd'=>15,'qw'=>50);
array_multisort($a2,$a3);
print_r($a2);
print_r($a3);
结果:
Array | |
( | |
[0] => 1 | |
[1] => 3 | |
[2] => 4 | |
[3] => 6 | |
) | |
Array | |
( | |
[qw] => 50 | |
[we] => 36 | |
[as] => 12 | |
[sdsd] => 15 | |
) | |
结论:排序的这些数组 必须是个数一样的 然后按第一个数组的值排序之后 ,第二数组顺序也被调整了,是按照第一个key的顺序调整的
类似于 order by id,name 这样
array_multisort($a2,$a3,$a4,$a5,$arr);
如果说a2中出现相同值的两个元素,那么排序后,a2是排序好的,a3是按照a2排序后的索引的顺序排序的,因为a1有两个元素是相同值的,a2在排序的时候,会按照a2的相应的索引对应的值的先后顺序排序。最后一个数组arr,当然先会按照第一个数组的排序后的索引顺序来排序,然后两个相等元素的排序会按照第二个数组的先后顺序进行排序。