2011-10-15 4 views
1

Я пытаюсь получить 1-й 5 самых больших значений из числового массива ... Я попытался использовать функцию rsort(), чтобы перечислить значения массивов от наивысшего до самого низкого, но не могу получить способ чтобы выбрать 1-й 5 из результата.Получить 1-й 5 самых больших значений из массива

ответ

6

использование array_slice:

$a = array (1, 3, 4, 2, 4, 5, 10, 7, 6, 8, 0); 
rsort($a); 
$largest = array_slice($a, 0, 5); 
+0

спасибо @knittl и всем остальным..array slice - это то, что мне нужно, и это отсортировало мою проблему. –

1

Если у вас уже есть массив организовал вы можете выводить его с

for ($i = 0; $i <= 4; $i++) { 
    print $array[$i]; 
} 
+0

... и сортировать его можно использовать 'rsort()', как другой сказал. – ComFreek

+0

Правда. Причина, почему я упоминал об этом здесь, это то, что он сказал, что уже сделал это в вопросе. Рад, что вы указали это, хотя :) –

1

После rsort просто порезать массив с помощью array_slice:

$ouput = array_slice($array, 0, 5); 
2

Check this out

$array_b4_change=array("knittl", "limón", "naranja", "plátano", "manzana" , "vikas" ,"wazzzy"); 
rsort($array_b4_change); 

Использование

array_slice($array_b4_change, 0, 5); 
+2

не будет работать, возвращаемое значение 'rsort' равно bool; он изменяет переданный массив напрямую – knittl

+0

согласен, извините за это ... отредактировал ответ ... + 1 knittl – Wazzzy

Смежные вопросы