background image

PHP

进阶 深入 array multisort 排序原理

本文为大家分享介绍了

array

 multisort 排序原理,供需要的朋友参考

代码如下:
 
<?php

$data

[] = 

array

('volume' => 67, 'edition' => 2);

$data

[] = 

array

('volume' => 86, 'edition' => 1);

$data

[] = 

array

('volume' => 85, 'edition' => 6);

$data

[] = 

array

('volume' => 98, 'edition' => 2);

$data

[] = 

array

('volume' => 86, 'edition' => 6);

$data

[] = 

array

('volume' => 67, 'edition' => 7);

?> 
 
代码如下:
 
<?php

$a

 = 

array

(1,2,3);

$b

 = 

array

(3);

// 

 

将数据根据 volume 

 

降序排列,根据 edition 升序排列

// 

 

把 $data 作为最后一个参数,以通用键排序

array_multisort

(

$a

$b

$data

);

//数组一维个数不同

var_dump( 

$data

);

?> 
 
上面这个测试代码提示数组不一致的个数
<b>Warning</b>: 

array_multisort

(): Array sizes are inconsistent in 

<b>G:\www\test\index.php</b> on line <b>15</b><br/>
再看
代码如下:
 
<?php

$data

[] = 

array

('volume' => 67, 'edition' => 2);

$data

[] = 

array

('volume' => 86, 'edition' => 1);

$data

[] = 

array

('volume' => 85, 'edition' => 6);

$data

[] = 

array

('volume' => 98, 'edition' => 2);

$data

[] = 

array

('volume' => 86, 'edition' => 6);