Array-Texte zufällig (nur einmal) ausgeben

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

  • Array-Texte zufällig (nur einmal) ausgeben

    Hallo,

    ich möchte gerne ein Array von Zahlen zufällig ausgeben lassen.
    Die Zahlen sollen gemischt und ALLE nur EINMAL ausgegeben werden.
    Bei mir klappt das nicht ganz, denn es werden manche Zahlen auch mehrmals ausgegeben.
    Wer kann mir weiterhelfen?

    PHP-Code:
    <?

    $my_array = array(

    '1<br/>',
    '2<br/>',
    '3<br/>',
    '4<br/>',
    '5<br/>'

    );
            for ($i=0; $i<=5; $i++)
            {
                $random = shuffle($my_array);
                $gemisch .= $my_array[$random] . "\r\n";
            }
            echo $gemisch;        
    ?>

  • #2
    Guck Dir das Beispiel unter PHP: shuffle - Manual mal genau an. Was fällt Dir auf?
    MM Newmedia | MeinBlog

    Kommentar


    • #3
      Keine Ahnung woran es liegt.
      Verrätst du es mir?

      Kommentar


      • #4
        Der Rückgabewert von shuffle() ist ein vollständiges Array und kein einzelner Array-Index. Außerdem solltest du es außerhalb der Schleife aufrufen, denn innerhalb vermischt du die Werte bei jedem Durchgang aufs Neue.

        Kommentar


        • #5
          Sorry aber ich checks echt nicht.
          kannst du mir bitte den richtigen code posten?
          wäre supernett von dir!

          Kommentar


          • #6
            Der Rückgabewert von shuffle() ist ein vollständiges Array
            Nein!

            PHP-Code:
            $my_array = array( 

            '1<br/>'
            '2<br/>'
            '3<br/>'
            '4<br/>'
            '5<br/>' 

            );
            shuffle($my_array);
            echo 
            implode(' ',$my_array); 
            Wir werden alle sterben

            Kommentar


            • #7
              Vielen Dank!
              Habe zwischenzeitlich eine andere Lösung gefunden, die auch funktioniert!

              Kommentar

              Lädt...
              X