2012-04-10 17 views
2

だから私はmin()が配列から最低の値を得ることができると知っていますが、配列から3つの最低値が必要です。配列から最低3つの値を取得するPHP

私の配列が$myArray命名されたと仮定すると:

私は私のアレイ上asort($myArray)を使用し、その後、print_r($myArray)これを出力:

Array (
    [137] => 4.90416668118 
    [135] => 7.1203544474 
    [18] => 7.2476262434 
    [81] => 8.37903400152 
    [33] => 9.1074567001 
    [4] => 9.90788482793 
    [138] => 10.2493339987 
    [5] => 11.6024401676 
    [63]...and so on until 
    [124] => 8727.73285117 
    [153] => 8727.73285117 
    [117] => 8727.73285117 
) 

どのように私は3つの最初の値またはX最初の値は私が必要とする必要があります得ることができます〜へ...

私はを指定しなければなりません:これはキーを紛失しても可能ですか?

ブラッドの答えのように

答えて

16
asort($yourarray, SORT_NUMERIC); 
print_r(array_slice($yourarray, 0, 3, true)); 

http://www.php.net/manual/en/function.asort.php

http://www.php.net/manual/en/function.array-slice.php

+0

とにかくキーを失うことなく、それを行うには?おそらくこれを答えarray_sliceとしてタグ付けするのは非常に便利で、おそらく私が今必要なものを得ることができます... –

+0

はい、キーを保持するために、最後のパラメータを 'true'に設定します。 – Brad

+1

ゴールド!ありがとう。それが私にできるだけ早く受け入れます...それは文書の中にあります。それは....ではありません。 –

2

が、あなたの連想配列のキーを保持するためにksortを使用します。

ksort($arr); 
print_r(array_slice($arr, 0, 3, true)); 
+0

'asort()'はキー関連を維持していますか?私は 'ksort()'がキーでソートしていると思っていましたが、これはここで必要なものではありません。彼は価値によって分類したい – Brad

関連する問題