Autor Zpráva
Kwoky
Profil *
Dobrý den,
řeším jednu zapeklitou věc. Potřeboval bych z rozsáhlého jednorozměrného pole (stovky položek) v PHP vytáhnout 5 nejmenších čísel. Je na to nějaká funkce nebo to budu muset udělat "hrubou silou"? Sort je pro mě nepoužitelný, protože ten pole komplet přeskládá (hodnotám se změní indexy), což je pro mě nežádoucí. Jak tedy na to? Děkuji za každou radu.
Mike8748
Profil
asort() seradis pole (zachova klice), pak vypises svych N polozek
Kwoky
Profil *
Děkuji za rychlou reakci. To je možná ono. Vyzkouším a napíšu.
Kwoky
Profil *
Tak ano, dělá to naprosto přesně to, co jsem potřeboval.

Ještě doplňující dotaz. Mám v kódu toto:
$i=1;
foreach ($pole as $key=>$hodnota) {
if ($i>1 and $i<=6)
   {echo "$key, $hodnota<br>\n";}
   $i=$i+1;
}


Foreach tedy projde celé pole, ale já použiji jen 2.-6. položku. Zatěžuje foreach nějak významně server (a mám se snažit ho tedy nějak po šestém průchodu zarazit) nebo je to jedno a nemá cenu to řešit?
nightfish
Profil
$i=1;
foreach ($pole as $key=>$hodnota) {
  if (($i > 1) && ($i<=6)) {
    echo "$key, $hodnota<br>\n";
  } else {
    break;
  }
  $i++;
}

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: