ÈçÓû§×¢²aÉu³ÉËae»uÃÜÂe£¬Óû§ÖØÖÃÃÜÂeÒ²ÐeÒªÉu³ÉÒ»¸oËae»uµÄÃÜÂe¡£Ëae»uÃÜÂeÒ²¾ÍÊÇÒ»´®¹Ì¶¨³¤¶ÈµÄ×Öu´®£¬ÎÄÕÂÕuÀiÁ˼¸ÖÖÉu³ÉËae»u×Öu´®µÄ½¨¡£
½¨Ò»
1¡¢ÔÚ33 ¨C 126ÖÐÉu³ÉÒ»¸oËae»uÕuÊý£¬Èç35¡£
2¡¢½«35ת»»³É¶ÔÓ¦µÄASCIIÂe×Ö*u£¬Èç35¶ÔÓ¦#¡£
3¡¢Öظ´ÒÔÉÏ1¡¢2²½Öen´Î£¬Á¬½Ó³ÉnλµÄÃÜÂe¡£
¸ÃËa¨Ö÷ÒªÓõ½ÁËÁ½¸oº¯Êý£¬mt_rand ( int $min , int $max )º¯ÊýÓÃÓÚÉu³ÉËae»uÕuÊý£¬ÆaÖÐ $min ¨C $max Ϊ ASCII ÂeµÄ¶Î§£¬ÕaÀiÈ¡ 33 -126 £¬¿ÉÒÔ¸u¾ÝÐeÒªµ÷Õu¶Î§£¬ÈçASCIIÂe±iÖÐ 97 ¨C 122 λ¶ÔÓ¦ a ¨C z µÄÓ¢ÎÄ×Öĸ£¬¾ßÌa¿É²Î¿¼ ASCIIÂe±i£» chr ( int $ascii )º¯ÊýÓÃÓÚ½«¶ÔÓ¦ÕuÊý $ascii ת»»³É¶ÔÓ¦µÄ×Öu¡£
function create_password($pw_length =
{
$randpwd = ¡±;
for ($i = 0; $i < $pw_length; $i++)
{
$randpwd .= chr(mt_rand(33, 126));
}
return $randpwd;
}
// µ÷Óøú¯Êý£¬´«µÝ³¤¶È²ÎÊý$pw_length = 6
echo create_password(6);
½¨¶þ
1¡¢Ô¤ÖÃÒ»¸oµÄ×Öu´® $chars £¬°uÀ¨ a ¨C z£¬A ¨C Z£¬0 ¨C 9£¬ÒÔ¼°Ò»Ð(C)ÌØÊa×Öu¡£
2¡¢ÔÚ $chars ×Öu´®ÖÐËae»uÈ¡Ò»¸o×Öu¡£
3¡¢Öظ´µÚ¶þ²½n´Î£¬¿ÉµÃ³¤¶ÈΪnµÄÃÜÂe¡£
function generate_password( $length = 8 ) {
// ÃÜÂe×Ö*u¼¯£¬¿ÉÈÎÒaÌi¼ÓÄaÐeÒªµÄ×Ö*u
$chars = ¡®abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()-_ []{}<>~`+=,.;:/?|';
$password = ¡±;
for ( $i = 0; $i < $length; $i++ )
{
// ÕaÀiÌa¹(C)Á½ÖÖ×Ö*u»ñÈ¡*½Ê½
// µÚÒ»ÖÖÊÇʹÓà substr ½ØÈ¡$charsÖеÄÈÎÒaһλ×Ö*u£»
// µÚ¶þÖÖÊÇÈ¡×Ö*uÊý×e $chars µÄÈÎÒaÔªËØ
// $password .= substr($chars, mt_rand(0, strlen($chars) ¨C 1), 1);
$password .= $chars[ mt_rand(0, strlen($chars) - 1) ];
}
return $password;
}
½¨Èý
1¡¢Ô¤ÖÃÒ»¸oµÄ×ÖuÊý×e $chars £¬°uÀ¨ a ¨C z£¬A ¨C Z£¬0 ¨C 9£¬ÒÔ¼°Ò»Ð(C)ÌØÊa×Öu¡£
2¡¢Í¨¹ýarray_rand()´ÓÊý×e$charsÖÐËae»uÑ¡³o$length¸oÔªËØ¡£
3¡¢¸u¾ÝÒÑ»ñÈ¡µÄ¼uÃuÊý×e $keys£¬´ÓÊý×e$charsÈ¡³o×ÖuÆ´½Ó×Öu´®¡£¸Ã½¨µÄȱµaÊÇÏaͬµÄ×Ö*u²»»aÖظ´È¡¡£
function make_password( $length = 8 )
{
// ÃÜÂe×Ö*u¼¯£¬¿ÉÈÎÒaÌi¼ÓÄaÐeÒªµÄ×Ö*u
$chars = array(¡®a', ¡®b', ¡®c', ¡®d', ¡®e', ¡®f', ¡®g', ¡®h',
¡®i', ¡®j', ¡®k', ¡®l','m', ¡®n', ¡®o', ¡®p', ¡®q', ¡®r', 's',
¡®t', ¡®u', ¡®v', ¡®w', ¡®x', ¡®y','z', ¡®A', ¡®B', ¡®C', ¡®D',
¡®E', ¡®F', ¡®G', ¡®H', ¡®I', ¡®J', ¡®K', ¡®L','M', ¡®N', ¡®O',
¡®P', ¡®Q', ¡®R', ¡®S', ¡®T', ¡®U', ¡®V', ¡®W', ¡®X', ¡®Y','Z',
¡®0¡a, ¡®1¡a, ¡®2¡a, ¡®3¡a, ¡®4¡a, ¡®5¡a, ¡®6¡a, ¡®7¡a, ¡®8¡a, ¡®9¡a, ¡®!',
¡®@','#', ¡®$', ¡®%', ¡®^', ¡®&', ¡®*', ¡®(¡®, ¡®)', ¡®-', ¡®_',
¡®[', ']¡®, ¡®{¡®, ¡®}', ¡®<', ¡®>', ¡®~', ¡®`', ¡®+', ¡®=', ¡®,',
¡®.', ¡®;', ¡®:', ¡®/', ¡®?', ¡®|');
// ÔÚ $chars ÖÐËae»uÈ¡ $length ¸oÊý×eÔªËؼuÃu
$keys = ($chars, $length);
$password = ¡±;
for($i = 0; $i < $length; $i++)
{
// ½« $length ¸oÊý×eÔªËØÁ¬½Ó³É×Ö*u´®
$password .= $chars[$keys[$i]];
}
return $password;
}
ʱ¼aЧÂʶԱÈ
ÎÒÃÇʹÓÃÒÔÏÂPHP´uÂe£¬¼ÆËaÉÏÃaeµÄ3 ¸oËae»uÃÜÂeÉu³Éº¯ÊýÉu³É6 λÃÜÂeµÄÔËÐÐʱ¼a£¬½ø¶ø¶ÔËuÃǵÄʱ¼aЧÂʽøÐÐÒ»¸o¼oµ¥µÄ¶Ô±È¡£×iÖյóoµÄ½a¹uÊÇ£º
½¨Ò»£º9.8943710327148E-5 Ãe
½¨¶þ£º9.6797943115234E-5 Ãe
½¨Èý£º0.00017499923706055 Ãe
¿ÉÒÔ¿´³o½¨Ò»ºÍ½¨¶þµÄÖ´ÐÐʱ¼a¶¼²i²»¶a£¬¶ø½¨ÈýµÄÔËÐÐʱ¼aÉÔ΢³¤Á˵a¡£
ͨ¹ý±È½ÏÈýÖÖ½¨µÄʵÏÖ¹ý³Ì£¬Ê±¼aЧÂʶԱȣ¬Ñ§Ï°ÁËPHPÉu³ÉËae»u×Öu´®µÄÈýÖÖ½*¨£¬Ï£Íu¿ÉÒÔ¶Ô´o¼Ò½ñºoµÄѧϰÓÐËu°iÖu¡£