Code optimieren

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

  • Code optimieren

    Hallo zusammen,

    ich habe mir etwas gebastelt, um aus einer Reihe von Werten immer nur 5 per Zufall auszugeben.

    Grundlage war ein Script von www.php.net bei der Funktion shuffle:

    PHP-Code:
    <?php
    $inhalt 
    = array(
               
    "1111",
               
    "2222",
               
    "3333",
               
    "4444",
               
    "5555",
               
    "6666",
               
    "7777",
               
    "8888",
               
    "9999"
               
    );

    srand ((float)microtime()*1000000);
    shuffle ($inhalt);

    $i 1;
    while ((list (, 
    $inhalt_array) = each ($inhalt)) && $i <= 5)
    {
       echo 
    $inhalt_array.'<br />';
       
    $i++;
    }
    ?>

    Es funktioniert!
    Ich wollte aber mal Eure Expertenmeinung dazu haben, ob der Code so ok ist, oder ob man ihn noch optimieren kann.

    Danke im Voraus!!!
    ### Tips schon eingearbeitet ###
    Zuletzt geändert von Scott; 16.12.2004, 12:44.

  • #2
    PHP-Code:
    $inhalt = array(111122223333, ...
    echo 
    $inhalt.'<br />'
    Die Zeit hat ihre Kinder längst gefressen

    Kommentar


    • #3
      ok. Danke.

      Variablen ausserhalb "" ausgeben.
      Array ohne "" geht leider nicht, weil ich dort Sätze mit Sonderzeichen anstelle der Zahlen nehmen will.

      Sonst ok?
      Zuletzt geändert von Scott; 16.12.2004, 12:47.

      Kommentar


      • #4
        Re: Code optimieren

        wenn man eine feste anzahl von schleifendurchläufen haben will - warum nimmt man dann keine for-schleife?

        und wozu list() bei einem array mit nur einer ebene gut sein soll ...?
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          ohne da jetzt genau hingeschaut zu haben, php hat für die Ausgabe die foreach schleife angedacht.

          http://de.php.net/manual/de/control-...es.foreach.php
          mfg
          marc75

          <Platz für anderes>

          Kommentar


          • #6
            Re: Re: Code optimieren

            Original geschrieben von wahsaga
            wenn man eine feste anzahl von schleifendurchläufen haben will - warum nimmt man dann keine for-schleife?
            Ich glaube auch das eine For schleife da geeigneter wäre.

            cheers
            Nichts auf der Welt ist so gerecht verteilt wie der Verstand. Denn jedermann ist davon überzeugt, dass er genug davon habe – René Descartes
            PHP Sicherheit
            PHPUnit[1-2]
            Professionelle Softwareentwicklung mit PHP 5
            Professionelle PHP 5-Programmierung

            Kommentar


            • #7
              Re: Code optimieren

              Original geschrieben von Scott
              Es funktioniert!
              Schön

              Original geschrieben von Scott
              Ich wollte aber mal Eure Expertenmeinung dazu haben, ob der Code so ok ist, oder ob man ihn noch optimieren kann.
              Wie viele Millionen mal am Tag wird denn das bißchen Code aufgerufen, dass es sich lohnt darüber nachzudenken?

              Ich will ja Deinen Wissensdurst nicht bremsen, aber es gibt für nahezu jedes Problem dutzende Ansätze und Schreibweisen - und keine davon ist gut oder schlecht. Wenn es doch funktioniert und die Funktion 5 mal am Tag genutzt wird, ist es doch prima. Selbst bei perfekter Optimierung wirst Du dabei vielleicht 2 ms rausholen im Vergleich zu "schlechtesten" Version

              Kommentar


              • #8
                Vielen Dank für die ganzen Tips!

                Habe es jetzt so gelöst:

                PHP-Code:
                $inhalt = array(..........);

                srand ((float)microtime()*1000000);
                shuffle ($inhalt);

                for (
                $i 1$i <= 5$i++)
                {
                  echo 
                $inhalt[$i].'<br />';

                @S.Oliver: Nenne mich ruhig Code-optimier-Freak
                Ich brauche das eben für mein Ego...

                Kommentar

                Lädt...
                X