一、php密碼生成類功能:
1.可設定密碼長度。
2.可設定要生成的密碼個數,批量生成。
3.可以指定密碼的規則,字母,數字,特殊字元等。
二、用法:
generatepassword.class.php類檔案如下:
<?php /** generate password class,根據指定規則生成password
* date: 2013-12-23
* author: fdipzone
* ver: 1.0
* * func:
* public batchgenerate 批量生成密碼
* private generate 生成單個密碼
* private getletter 獲取字母
* private getnumber 獲取數字程式設計客棧
* private getspecial 獲取特殊字元
*/
class generatepassword
if(isset($num) && is_numeric($num) && $num>0 && $num<=100)
if(isset( && is_string($special) && $special!='')
if($rule)
if(isset($rule['number']) && in_array($rule['number'], array(1,2)))
if(isset($rule['special']) && in_array($rule['special'], array(1,2)))
if($t_rule)
} }
/** 批量生成密碼
* @return array
*/ public function batchgenerate()
return $passwords;
} /** 生成單個密碼
* @return string
*/ private function generate()
$pool .= $letter;
} if(isset($this->_rule['number']))
$pool .= $number;
} if(isset($this->_rule['special']))
$pool .= $special;
} $pool = str_shuffle($pool); // 隨機打亂
$password = str_shuffle($force_pool. substr($pool, 0, $this->_length-strlen($force_pool))); // 再次隨機打亂
return $password;
} /** 字母 */
private function getletter()
/** 數字 */
private function getnumber()
/** 特殊字元 */
private function getspecial()
} // class end
?>
demo示例程式如下:
<?php require 'generatepassword.class.php';
$rule = array(
'letter' => 5, // 必須含有大小寫字母
'number' => 2, // 必須含有數字
'special' => 2 // 必須含有特殊字元
);
$special = '!@#$%_-';
$obj = new generatepassword(8, 10, $rule, $special);
$passwords = $obj->batchgenerate();
echo implode('
', $passwords);
?>
本文標題: php密碼生成類例項
本文位址:
php 密碼生成類
php 密碼生成類 功能 1.可設定密碼長度。2.可設定要生成的密碼個數,批量生成。3.可以指定密碼的規則,字母,數字,特殊字元等。generatepassword.class.php generate password class,根據指定規則生成password date 2013 12 23 ...
php 密碼生成類
php 密碼生成類 功能 1.可設定密碼長度。2.可設定要生成的密碼個數,批量生成。3.可以指定密碼的規則,字母,數字,特殊字元等。generatepassword.class.php generate password class,根據指定規則生成password date 2013 12 23 ...
php生成隨機密碼
隨機密碼生成 post number 0 數字 0 不啟用 1 啟用 post lowercase 0 小寫字母 post uppercase 0 大寫字母 post punctuation 1 特殊符號 post repeat 0 字元 1重複 0不重複 post length 31 密碼長度 p...