ja, könnte auch ins ot rein - hier ist ja nichts los  
habe mal ein altes script von mir rausgekramt.
gesucht: 5 eindeutige zufallszahlen zwischen 1 und 15
bedingung: maximale performance bei z.b. 10.000 schleifendurchläufen
wer hat ein schnelleres script?
	
							
						
					
habe mal ein altes script von mir rausgekramt.
gesucht: 5 eindeutige zufallszahlen zwischen 1 und 15
bedingung: maximale performance bei z.b. 10.000 schleifendurchläufen
wer hat ein schnelleres script?
PHP-Code:
	
	
function getmicrotime(){
    list($usec, $sec) = explode(" ",microtime());
    return ((float)$usec + (float)$sec);
    }
// Stoppuhr anschmeißen
$time1=getmicrotime();
// CODE ========================================================================
$i=0;
while($i<10)
 {
  $i++;
  $k=0;
  while($k<10000)
   {
       $k++;
       // Zufallszahlen-Generator initialisieren
       srand((double)microtime()*1000000);
       // Auf gut Glück fünf Zufallszahlen generieren
    $r0=rand(1,15);
    $r1=rand(1,15);
    $r2=rand(1,15);
    $r3=rand(1,15);
    $r4=rand(1,15);
    
    // Nach dieser While-Schleife sind die ersten drei Zufallszahlen eindeutig
    while($r0==$r1||$r1==$r2||$r0==$r2)
     {
      $r0=rand(1,15);
      $r1=rand(1,15);
      $r2=rand(1,15);
     }
     
    // Nach dieser While-Schleife sind die ersten vier Zufallszahlen eindeutig
    while($r0==$r3||$r1==$r3||$r2==$r3)
     {
      $r3=rand(1,15);
     }
    // Nach dieser While-Schleife sind alle Zufallszahlen eindeutig
    while($r0==$r4||$r1==$r4||$r2==$r4||$r3==$r4)
     {
      $r4=rand(1,15);
     }
   }
  // Mal testweise den ganzen Müll ausgeben (10.000 Durchläufe)
  echo "$r0, $r1, $r2, $r3, $r4 <br>";
 }
// =============================================================================
// Stoppuhr stoppen (wie schon der Name sagt) 
$time2=getmicrotime();
// Die fantastische Laufzeit des genialen Algorithmus ausgeben
echo "<br>RUNTIME: ";
echo $time2-$time1; 
          
 
 srand ist im übrigen seit 4.2.0 obsolet.
							
						
 !
Kommentar