PHP - 如何将项添加到子数组,然后按新订单对父数组进行排序?

时间:2017-11-17 02:22:53

标签: php arrays sorting

我想将一个项添加到子数组中,并按新顺序对数组进行排序。

这是我的数据:

$number = '112';
$user = 2;

这是我的阵列:

array( 
1 => array(111, 109, 108), 
2 => array(110, 107, 105), 
3 => array(99, 97, 96) 
)

我想在此数组中添加一个值,并按新订单对其进行排序。所以,我的数组需要像这样结束:

array( 
2 => array(112, 110, 107, 105), 
1 => array(111, 109, 108), 
3 => array(99, 97, 96) 
)

我怎样才能快速完成?

1 个答案:

答案 0 :(得分:3)

假设有一个用户数组中的数字大于$number

的情况
$number = '112';
$user = 2;

$array = array(
1 => array(111, 109, 108),
2 => array(110, 107, 105),  
3 => array(99, 97, 96) 
);

$array[$user][] = $number; // add number to user's array
rsort($array[$user]);      // sort highest to lowest
$array = array($user => $array[$user]) + $array; // move the newly modified array to first element

echo '<pre>';
print_r($array);