1. #1
    Avatar von Comu
    Registriert seit
    18.11.2011
    Beiträge
    772
    Thanked 753 Times in 363 Posts

    Standard [PHP] RandomString erzeugen

    Hi,
    die Funktion habe ich nun schon desöfteren benutzt, in Diskussion gestellt, und verbessert bis es kaum mehr ging. Es ist eine kleine aber effektive Funktion welche euch erlaubt einen zufälligen String anhand eurer vorgegebenen Zeichen zu erzeugen.

    PHP-Code:
    <?php

    function RandomString($a)
    {

      
    $chars 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!?=()/&%$§"^*+-_~#,;.:<>';
      
    $chars str_split($chars);

      for(
    $i 0$i $a$i++)
      {
        
    shuffle($chars);
        
    $return .= $chars[rand(1,$a)];
      }
      
        return 
    $return;
        
    }

    echo 
    RandomString(5);

    ?>

  2. #2

    Registriert seit
    28.10.2011
    Beiträge
    625
    Thanked 279 Times in 168 Posts

    Standard AW: [PHP] RandomString erzeugen

    Effektiv ist, wenn man damit etwas anfangen kann. Verbessern (Wie nachfolgend) kann man dies auch.

    Warum?
    Nützlich ist es, wenn Funktionen/Methoden so ausgearbeitet sind, dass man diese mehrfach verwenden kann egal ob ich nun nur "Großbuchstaben" haben möchte oder nur "Sonderzeichen mit Nummern".

    Ich war mal so frei und habe es ein wenig erweitert

    PHP-Code:
    <?php
        
    function RandomString($length$uppercase true$lowercase true$numbers true$specialchars true) {
            
    $chars "";
            
            if(
    $numbers == true) {
                
    $chars .= "0123456789";
            }
            
            if(
    $uppercase == true) {
                
    $chars .= "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
            }
            
            if(
    $lowercase == true) {
                
    $chars .= "abcdefghijklmnopqrstuvwxyz";
            }
            
            if(
    $specialchars == true) {
                
    $chars .= "!?=()/&%\$§\"^*+-_~#,;.:<>";
            }
            
            
    $chars str_split($chars);
            
            for(
    $i 0$i $length$i++) {
                
    shuffle($chars);
                
    $return .= $chars[rand(1$length)];
            }
            
            return 
    $return;
        }
        
        print 
    "<br />Alle: " RandomString(5);
        print 
    "<br />Nur Großbuchstaben & Nummern: " RandomString(5truefalsetruefalse);
    ?>
    Ich frage mich auch immer und immer wieder warum viele sich unnützige Zeilen Code zulegen
    PHP-Code:
    if(/* Bedingung */
    {
    // Weiteres

    Warum macht man es nicht einfacher indem man etwas sauberer implementiert
    PHP-Code:
    if(/* Bedingung */) {
        
    // Weiteres

    Werdet ihr alle nach Zeilen bezahlt oder warum verplmpert ihr so viele Zeilen? ^^
    Geändert von Bubble Gum (21.11.2011 um 05:22 Uhr)

  3. The Following User Says Thank You to Bubble Gum For This Useful Post:

    Comu (21.11.2011)

  4. #3

    Registriert seit
    19.11.2011
    Beiträge
    496
    Thanked 412 Times in 268 Posts

    Standard AW: [PHP] RandomString erzeugen

    Werdet ihr alle nach Zeilen bezahlt oder warum verplmpert ihr so viele Zeilen? ^^
    Und du wirst wohl nach Tastenanschlägen bezahlt.^^
    Die Überprüfung auf true ist nicht notwendig.

  5. The Following User Says Thank You to Mr. White For This Useful Post:

    Comu (21.11.2011)

  6. #4
    Avatar von Comu
    Registriert seit
    18.11.2011
    Beiträge
    772
    Thanked 753 Times in 363 Posts

    Standard AW: [PHP] RandomString erzeugen

    Ich frage mich auch immer und immer wieder warum viele sich unnützige Zeilen Code zulegen

    Werdet ihr alle nach Zeilen bezahlt oder warum verplmpert ihr so viele Zeilen? ^^
    Stell dir vor, ich werde dafür garnicht bezahlt, denn ich mach das Hobbymäßig!
    Nunja, ich "persönlich" finde es einfach besser, also es sieht besser aus und ist leichter zu verstehen wenn ich die { Klammer darunter setze. Keine Ahnung warum, mit allen mit denen ich bis jetzt zusammengearbeitet habe hat sich auch noch nie einer beschwer gehabt.

  7. #5
    Avatar von Diebspiel
    Registriert seit
    18.11.2011
    Beiträge
    311
    Thanked 191 Times in 102 Posts

    Standard AW: [PHP] RandomString erzeugen

    Zitat Zitat von Bizzi Beitrag anzeigen
    Ich frage mich auch immer und immer wieder warum viele sich unnützige Zeilen Code zulegen
    Lol, dann hast du noch nie anständige, große Projekte gehabt. In allen meinen Projekten mache ich es wie Comu. Bei ein paar Zeilen oder bei ein paar tausend Zeilen geht nämlich sonst die Übersicht verloren.

    Schau dir mal vBulletin an, macht es übrigens genauso.

    Darüber muss man aber nicht diskutieren, jeder macht es so, wie er will. Aber wenn du was veröffentlichst bitte ich dich einfach, es übersichtlich zu machen.

  8. The Following User Says Thank You to Diebspiel For This Useful Post:

    Comu (21.11.2011)

  9. #6
    Avatar von Comu
    Registriert seit
    18.11.2011
    Beiträge
    772
    Thanked 753 Times in 363 Posts

    Standard AW: [PHP] RandomString erzeugen

    Hab noch ne andere Methode gefunden, basierend auf der von bizzi.

    PHP-Code:
    <?php

    function RandomString($a$upper true$lower true$numbers true$special true)
    {
      
    $chars '';
      
      if(
    $upper)
      {
        foreach(
    range('A','Z') as $char)
        {
          
    $chars .= $char;
        }
      }
      
      if(
    $lower)
      {
        foreach(
    range('a','z') as $char)
        {
          
    $chars .= $char;
        }
      }
      
      if(
    $numbers)
      {
        foreach(
    range('0','1') as $char)
        {
          
    $chars .= $char;
        }
      }
      
      if(
    $special)
      {
        
    $chars .= '!?=()/&%$§"^*+-_~#,;.:<>';
      }
      
      
    $chars str_split($chars);

      for(
    $i 0$i $a$i++)
      {
        
    shuffle($chars);
        
    $return .= $chars[rand(1,$a)];
      }
      
        return 
    $return;
        
    }

    echo 
    RandomString(5);

    ?>

Ähnliche Themen

  1. Wasserrad zum Strom erzeugen
    Von Disturbed im Forum Bildung
    Antworten: 3
    Letzter Beitrag: 07.02.2012, 18:51
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.