[Funktion] Lotto??

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Funktion] Lotto??

    Hi,
    die folgende Funktion sollte jedes Mal 6 verschiedene Zahlen ausgeben.
    Sie gibt aber immer die gleiche Zahlen aus.

    Was habe ich falsch gemacht?

    PHP-Code:
    <?php
        
    //Anzahl aus Gesamt.
        
    function Lotto($anzahl$gesamt)
        {    
            
    $spiel = array();
            for (
    $i=0$i<$gesamt$i++)
            {
                
    $spiel[] = $i+1;
            }
            
    //die Funktion shuffle  vermischt die Schlüsselelemente zufällig.
            
    shuffle($spiel);              
            
    //die Funktion array_slice($array, $schluessel, $anzahl) trennt die ersten 6 ($anzahl) Elemente heraus.
            
    $result array_slice($spiel0$anzahl);    
            
    //die Funktion sort()  sortiert das Array.
            
    sort($result);                
            return 
    $result;
        }
        
        
    //Anzahl aus Gesamt. Also 6 aus 49. Funktionsaufruf
        
    $myLotto Lotto(649);
        foreach(
    $myLotto as $schluessel => $wert)
        {
            echo (
    "$wert<br>");
        }
    ?>
    Gruß
    Zuletzt geändert von bigtail; 26.03.2004, 11:55.

  • #2
    so gehts

    PHP-Code:
    <?php
        
    //Anzahl aus Gesamt.
        
    function Lotto($anzahl$gesamt)
        {    
            
    $spiel = array();

            for (
    $i=0$i<$gesamt$i++)
            {
                
    $spiel[] = $i+1;
            }

            
    //die Funktion shuffle  vermischt die Schlüsselelemente zufällig.
            
    srand ((float)microtime()*1000000);
            
    shuffle ($spiel);

            
    //die Funktion array_slice($array, $schluessel, $anzahl) trennt die ersten 6 ($anzahl) Elemente heraus.
            
    $result array_slice($spiel0$anzahl);

            
    //die Funktion sort()  sortiert das Array.
            
    sort($result);

            return 
    $result;
        }
        
        
    //Anzahl aus Gesamt. Also 6 aus 49. Funktionsaufruf
        
    $myLotto Lotto(649);
        foreach(
    $myLotto as $schluessel => $wert)
        {
            echo (
    "$wert<br>");
        }
    ?>
    die hummel ist ein sinnloses tier ohne zukunft!

    Kommentar


    • #3
      Besten Dank für die super Antwort.

      Aber was bewirkt diese Zeile?

      PHP-Code:
      srand ((float)microtime()*1000000); 
      Könntest du sie bitte erläutern??

      Gruß

      Kommentar


      • #4
        Original geschrieben von bigtail
        Aber was bewirkt diese Zeile?
        PHP-Code:
        srand ((float)microtime()*1000000); 
        Könntest du sie bitte erläutern??
        mit srand wird die zufallsfunktion initialisiert.
        microtime wird genommen, um immer einen relativ zufälligen parameter für diese funktion zu haben.

        weiteres siehe manual.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar

        Lädt...
        X