Skip to content

Instantly share code, notes, and snippets.

@gravataLonga
Last active April 9, 2016 14:38
Show Gist options
  • Save gravataLonga/6824960 to your computer and use it in GitHub Desktop.
Save gravataLonga/6824960 to your computer and use it in GitHub Desktop.
Generate a random Password
<?php
function generatePassword ($length = 8) {
$password = "";
$possible = "2346789bcdfghjkmnpqrtvwxyzBCDFGHJKLMNPQRTVWXYZ";
$maxlength = strlen($possible);
// check for length overflow and truncate if necessary
if ($length > $maxlength) {
$length = $maxlength;
}
// set up a counter for how many characters are in the password so far
$i = 0;
// add random characters to $password until $length is reached
while ($i < $length) {
// pick a random character from the possible ones
$char = substr($possible, mt_rand(0, $maxlength-1), 1);
// have we already used this character in $password?
if (!strstr($password, $char)) {
// no, so it's OK to add it onto the end of whatever we've already got...
$password .= $char;
// ... and increase the counter by one
$i++;
}
}
// done!
return $password;
}
?>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment