Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 按值对关联数组排序并获得十个最大键_Php_Arrays_Associative Array - Fatal编程技术网

Php 按值对关联数组排序并获得十个最大键

Php 按值对关联数组排序并获得十个最大键,php,arrays,associative-array,Php,Arrays,Associative Array,我有一个循环中的关联数组,其中存储了一个用户id(键)和一个分数(值) 我想知道,在这个循环完成后,我如何对值进行排序(获得十个最高分数)并获得它们的键。使用(保留键)并获得前十名 asort($scores, SORT_NUMERIC); $top10 = array_slice($sort, -10); 用来拿钥匙,比如 @deceze-Wow,当我已经七个月没有专业地学习PHP时,就会发生这种情况……嗯,这是打印出来的(json_encode…[0,1,2,3,4,5,6,7,8,9]

我有一个循环中的关联数组,其中存储了一个用户id(键)和一个分数(值)

我想知道,在这个循环完成后,我如何对值进行排序(获得十个最高分数)并获得它们的键。

使用(保留键)并获得前十名

asort($scores, SORT_NUMERIC);

$top10 = array_slice($sort, -10);
用来拿钥匙,比如


@deceze-Wow,当我已经七个月没有专业地学习PHP时,就会发生这种情况……嗯,这是打印出来的(json_encode…[0,1,2,3,4,5,6,7,8,9])。我实际上想要用户id($scores[]的键)所以是5,7,2,4,3…我想这只是返回index@Praneet我的坏,
array\u slice
需要一个额外的参数来保留键。已修复。
asort($scores, SORT_NUMERIC);

$top10 = array_slice($sort, -10);
asort($scores);
asort($scores);
$tenHighest = array_slice($scores, -10, null, true);
$tenHighestKeys = array_keys($tenHighest);