wp_generate_password( int $length = 12, bool $special_chars = true, bool $extra_special_chars = false )
Generates a random password drawn from the defined set of characters.
Parameters
- $length
-
(Optional) The length of password to generate.
Default value: 12
- $special_chars
-
(Optional) Whether to include standard special characters.
Default value: true
- $extra_special_chars
-
(Optional) Whether to include other special characters. Used when generating secret keys and salts.
Default value: false
Return
(string) The random password.
Source
File: wp-includes/pluggable.php
function wp_generate_password( $length = 12, $special_chars = true, $extra_special_chars = false ) {
$chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
if ( $special_chars )
$chars .= '!@#$%^&*()';
if ( $extra_special_chars )
$chars .= '-_ []{}<>~`+=,.;:/?|';
$password = '';
for ( $i = 0; $i < $length; $i++ ) {
$password .= substr($chars, wp_rand(0, strlen($chars) - 1), 1);
}
/**
* Filters the randomly-generated password.
*
* @since WP-3.0.0
*
* @param string $password The generated password.
*/
return apply_filters( 'random_password', $password );
}
Changelog
Version | Description |
---|---|
WP-2.5.0 | Introduced. |