chan15

Untitled

Sep 2nd, 2015
138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <?php
  2.  
  3. class SerialGenerator
  4. {
  5.     public function generate()
  6.     {
  7.         $serial = array();
  8.         $key = array_merge(
  9.             range('a', 'z'),
  10.             range(0, 9)
  11.         );
  12.  
  13.         do {
  14.             $serial[] = $key[array_rand($key, 1)];
  15.         } while (count($serial) < 12);
  16.  
  17.         return implode('', $serial);
  18.     }
  19.  
  20.     public function start($amount = 100)
  21.     {
  22.         $results = array();
  23.  
  24.         for ($i = 0; $i < $amount; $i++) {
  25.             $gen = $this->generate();
  26.  
  27.             do {
  28.                 $gen = $this->generate();
  29.                 srand(microtime() * 10000000);
  30.             } while (in_array($gen, $results) === true);
  31.  
  32.             $results[] = $gen;
  33.  
  34.             var_dump("{$i} " . $this->colorize($gen));
  35.         }
  36.     }
  37.  
  38.     public function colorize($text, $status = 'SUCCESS') {
  39.         $out = '';
  40.  
  41.         switch($status) {
  42.             case 'SUCCESS':
  43.                 $out = '[42m'; //Green background
  44.                 break;
  45.             case 'FAILURE':
  46.                 $out = '[41m'; //Red background
  47.                 break;
  48.             case 'WARNING':
  49.                 $out = '[43m'; //Yellow background
  50.                 break;
  51.             case 'NOTE':
  52.                 $out = '[44m'; //Blue background
  53.                 break;
  54.         }
  55.  
  56.         return chr(27) . "$out" . "$text" . chr(27) . "[0m";
  57.     }
  58. }
Advertisement
Add Comment
Please, Sign In to add comment