ugrás a tartalomhoz

Mappa tartalmát tömbbe beletéve megjeleníteni 4x random

Km4t3 · 2006. Okt. 30. (H), 12.18
Sziasztok!
tegnap este, vagyis ma hajnalban :) írtam ezt a kódot:
  1. <?php  
  2.     $userdir      = "flash";  
  3.     $handle       =  opendir($userdir);  
  4.   
  5.     while ($file = readdir($handle))  
  6.         {  
  7.         if ($file != "." && $file != "..")  
  8.             {  
  9.             $tomb[] = $file;  
  10.             }  
  11.         }  
  12.           
  13.         srand(time());  
  14.   
  15.         $sizeof = count($tomb);  
  16.   
  17.         $random = rand(0, $sizeof - 1);  
  18.   
  19.     print("$tomb[$random]");  
  20. ?>  
az lenne a kérdésem, hogy lehetne 4 random eredményt kicsikarni ebből az egy programból? Anélkül, hogy négyszer beírogatnám ugyanezt más változókkal...?
előre is köszönöm!
 
1

ciklus

kerzo · 2006. Okt. 30. (H), 12.43
Én először megpróbálkoznék egy ciklussal, ami négyszer hajtja végre a véletlenszám generálást és kiíratást. pl.:
for ( $i=1; $i<=4; $i++) {
    $random = rand(0, $sizeof - 1);
    print("$tomb[$random]");
}

Aztán ha ez megy, akkor érdemes azon elgondolkodni, hogy vajon mekkora az esélye annak, hogy egy cikluson belül kétszer ugyan azt a számot adja ki. Ebben az esetben érdemes még egy feltételt beletenni, ahol in_array() függvénnyel megnézed, hogy a szám szerepel-e a tömbben.
2

gondolkozz!

Anonymous · 2006. Okt. 30. (H), 12.45
$i = 0;
while( $i++ < 4) {
  $random = rand(0, count($tomb) - 1);
  print $tomb[$random];
  unset($tomb[$random]);
}
3

ciklus

kerzo · 2006. Okt. 30. (H), 12.47
Én először megpróbálkoznék egy ciklussal, ami négyszer hajtja végre a véletlenszám generálást és kiíratást. pl.:
for ( $i=1; $i<=4; $i++) {
    $random = rand(0, $sizeof - 1);
    print("$tomb[$random]");
}

Aztán ha ez megy, akkor érdemes azon elgondolkodni, hogy vajon mekkora az esélye annak, hogy egy cikluson belül kétszer ugyan azt a számot adja ki. Ebben az esetben érdemes még egy feltételt beletenni, ahol in_array() függvénnyel megnézed, hogy a szám szerepel-e a tömbben.
4

RTFM

amonrpg · 2006. Okt. 30. (H), 14.27
erre találták ki az array_rand függvényt...
http://hu.php.net/manual/en/function.array-rand.php
5

juhujjj

Km4t3 · 2006. Okt. 30. (H), 14.49
jujj oopsssz :D
ezt nemtudtam :)
köszönöm !!

többieknek is köszönöm a segítséget!