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

标签 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) 
)

我怎样才能快速做到这一点?

最佳答案

假设用户数组中有一个数字大于$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);

关于PHP - 如何将项目添加到子数组,然后按新顺序对父数组进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47342324/

相关文章:

PHP MYSQL JOIN QUERY 2 数据库,其中 table1.id = table2.id,如何将 table2.content 显示为 table1.id

Python:如何自定义排序列表?

C# 按字母顺序对字符串数组进行排序,注意将以大写字母开头的字符串放在前面。第一的

java - 如何在其成员排序的intellij中生成java的hashcode方法?

.net - Dim v As String() 和 Dim v() As String 有什么区别?

php - 如何在循环内循环?

php - Paypal IPN 沙箱 - IPN 监听器 - 未验证或无效

php - 如何更改主导航栏的颜色,我无法通过 CSS 或 PHP 访问它

javascript - 使用 underscore.js 过滤多维数组

java - (line != null) 在 Java BufferedReader 中不起作用