<?php function randPass($upper = 0, $lower = 4, $numeric = 4, $other = 0) { //we need these vars to create a password string $passWord = ''; //generate the contents of the password for ($i = 0; $i < $upper; $i++) { } for ($i = 0; $i < $lower; $i++) { } for ($i = 0; $i < $numeric; $i++) { } for ($i = 0; $i < $other; $i++) { } //randomize the order of characters //shuffle($passOrder); //concatenate into a string foreach ($passOrder as $char) { $passWord .= $char; } //we're done return $passWord; } for($j=0; $j<100000; $j++){ }
To jest przykład z manuala, a chodzi o to, że co 4096 powtarza się ta sama sekwencja czyli
0 radg0698
1 vcwy0048
...
...
4096 radg0698
4097 vcwy0048
...
...
8192 radg0698
8193 vcwy0048
Czy wiecie może dlaczego tak jest?
Wydaje mi się, że zerowanie tablic jest tutaj w porządku...
shuffle($passOrder) którą zakomentowałem, również pozostaje w tej sekwencji, tzn zmienia kolejność liter i cyfr, ale i tak pozostaje w sekwencji tylko, że o 32768.
Ja potrzebuję około 15 mln tak wygenerowanych losowych kodów także nie ratuje mnie to.