2010-12-17 23 views
0

今日の最後の質問...私は遠くに(あなたのおかげで!)、さらに進んでいく必要があります。ソートされた配列があります。あなたはちょうどあなたが望む結果の量のループを作るような値、トリム並べ替え配列

value key 
Boerée 5 
Bour 5 
Linszen 4 
de Wilde 3 
Dingemans 3 
Koelman 3 
Tijssen 1 
van der Meer 1 
Bakker 1 
de Haan 1 
van Tricht 1 
Nieman 1 
Boer 1 

よろしく

+0

はあなたがトリム低い値とはどういう意味ですか? –

+0

私はあなたが何について話しているか分かりません。例の配列のvar_dumpを投稿し、さらに「最高の最高値」と「最高の下限」を定義してください – Craige

+0

私は入力を理解しているかどうかわかりません:どのように各キーにいくつかの値を持たせることができますか? –

答えて

0

...私は最高の下にあるすべての低い値をトリミングする必要があるので、それを並べ替えていますか?宿題のようなにおいがするので、完全な例を投稿するつもりはありません。 (私はずっと前に投稿したと思う)。

$amount = 5; 
for($i = 0; $i < amount; i++) 
+0

ありがとう、私の配列の最大値を取得する必要があります、$金額= max($ authors);それから残りの部分!ありがとう! – Thijs

0

[OK]を、私はあなたが意味することを理解していると仮定し、これはうまくいくと思います。私はちょうどそれがあまりにも多くのあなたの答え:)それは同様にソートされていない配列のために働く

function onlyTheStrong($array) { 
    $returnArray = array(); 

    foreach ($array as $key => $value) { 
     if (!isset($max) || $value > $max) { 
      $max = $value; 
      $returnArray = array($key => $value); 
     } else if ($value == $max) { 
      $returnArray[$key] = $value; 
     } 
    } 

    return $returnArray; 
} 

を待つために書くように感じました。

EDIT:

どのようにそのことについて、あなただけ使用することができます。

$top_authors = array_keys($authors, max($authors)); 
+0

ありがとうございますが、すでにこれを書いており、動作します:$ most_amount = max($ authors); $ top_authors = array(); foreachの($ lastn => $キーとして$著者) {IF($のbiggest_amount == $キー) {$ top_authors [$ lastn] + = 1; } } – Thijs

+0

こんにちは、私はより速い方法を見つけました: '$ top_authors = array_keys($ authors、max($ authors));'! –