我们在很多开发当中,都需要生成随机字符,一般就会使用下面的 PHP 函数实现了:

<?phpfunction getRandomStr(){
	$str = "";
	$str_pol = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz";
	$max = strlen($str_pol) - 1;
	for ($i = 0; $i < 16; $i++) {
		$str .= $str_pol[mt_rand(0, $max)];
	}
	return $str;}?>

其实 WordPress 已经自带了随机字符生成函数:wp_generate_password,这个函数原来是用来生成用户默认密码时候用的,但是同样我们也可以用来生成随机字符,他有三个参数:
$length:要生成的随机字符的长度,默认为:12,
$special_chars:随机字符中是否包含一些特殊字符,包含:!@#$%^&*(),默认是 true,如果你要生成的随机字符不包含这些特殊字符,只是大小写字母加数字的话,这个参数要设置为 false。
$extra_special_chars:随机字符中是否包含一些更特殊的字符,比如:-_ []{}<>~`+=,.;:/?|,这一个用于生成 secret key 的时候使用。默认是 false。
比如我们要生成16位的随机字符,并且不包含任何特殊字符:

<?php $random_str =wp_generate_password(16,false);?>

via 我爱水煮鱼