function user_password

Same name and namespace in other branches
  1. 9 core/modules/user/user.module \user_password()
  2. 8.9.x core/modules/user/user.module \user_password()

Generate a random alphanumeric password.

12 calls to user_password()
DBLogTestCase::doUser in modules/dblog/dblog.test
Generates and then verifies some user events.
DrupalWebTestCase::drupalCreateUser in modules/simpletest/drupal_web_test_case.php
Create a user with a given set of permissions.
openid_form_user_register_form_alter in modules/openid/openid.module
Implements hook_form_FORM_ID_alter().
TriggerOtherTestCase::testActionsUser in modules/trigger/trigger.test
Tests triggering on user create and user login.
UpdateScriptFunctionalTest::testUpdateAccess in modules/system/system.test
Tests access to the update script.

... See full list

File

modules/user/user.module, line 717

Code

function user_password($length = 10) {
  // This variable contains the list of allowable 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'.
  $allowable_characters = 'abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ23456789';
  // Zero-based count of characters in the allowable list:
  $len = strlen($allowable_characters) - 1;
  // Declare the password as a blank string.
  $pass = '';
  // Loop the number of times specified by $length.
  for ($i = 0; $i < $length; $i++) {
    do {
      // Find a secure random number within the range needed.
      $index = ord(drupal_random_bytes(1));
    } while ($index > $len);
    // Each iteration, pick a random character from the
    // allowable string and append it to the password:
    $pass .= $allowable_characters[$index];
  }
  return $pass;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.