class DefaultPasswordGenerator
Same name in other branches
- 9 core/lib/Drupal/Core/Password/DefaultPasswordGenerator.php \Drupal\Core\Password\DefaultPasswordGenerator
- 10 core/lib/Drupal/Core/Password/DefaultPasswordGenerator.php \Drupal\Core\Password\DefaultPasswordGenerator
Provides a default password generator.
Hierarchy
- class \Drupal\Core\Password\DefaultPasswordGenerator implements \Drupal\Core\Password\PasswordGeneratorInterface
Expanded class hierarchy of DefaultPasswordGenerator
1 file declares its use of DefaultPasswordGenerator
- DefaultPasswordGeneratorTest.php in core/
tests/ Drupal/ Tests/ Core/ Password/ DefaultPasswordGeneratorTest.php
File
-
core/
lib/ Drupal/ Core/ Password/ DefaultPasswordGenerator.php, line 10
Namespace
Drupal\Core\PasswordView source
class DefaultPasswordGenerator implements PasswordGeneratorInterface {
/**
* The allowed characters for the password.
*
* Note that the number 0 and the letter 'O' have been removed to avoid
* confusion between the two. The same is true of 'I', 1, and 'l'.
*
* @var string
*/
protected $allowedChars = 'abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ23456789';
/**
* Generates a password.
*
* @param int $length
* (optional) The length of the password.
*
* @return string
* The password.
*/
public function generate(int $length = 10) : string {
// The maximum integer we want from random_int().
$max = strlen($this->allowedChars) - 1;
$pass = '';
for ($i = 0; $i < $length; $i++) {
$pass .= $this->allowedChars[random_int(0, $max)];
}
return $pass;
}
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overriden Title |
---|---|---|---|---|
DefaultPasswordGenerator::$allowedChars | protected | property | The allowed characters for the password. | |
DefaultPasswordGenerator::generate | public | function | Generates a password. | Overrides PasswordGeneratorInterface::generate |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.